1/*
2 This file is part of the WebKit open source project.
3 This file has been generated by generate-bindings.pl. DO NOT MODIFY!
4
5 This library is free software; you can redistribute it and/or
6 modify it under the terms of the GNU Library General Public
7 License as published by the Free Software Foundation; either
8 version 2 of the License, or (at your option) any later version.
9
10 This library is distributed in the hope that it will be useful,
11 but WITHOUT ANY WARRANTY; without even the implied warranty of
12 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
13 Library General Public License for more details.
14
15 You should have received a copy of the GNU Library General Public License
16 along with this library; see the file COPYING.LIB. If not, write to
17 the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
18 Boston, MA 02110-1301, USA.
19*/
20
21#include "config.h"
22
23#if ENABLE(WEBGL)
24
25#include "JSWebGLRenderingContext.h"
26
27#include "ActiveDOMObject.h"
28#include "DOMIsoSubspaces.h"
29#include "InspectorCanvasCallTracer.h"
30#include "JSDOMAttribute.h"
31#include "JSDOMBinding.h"
32#include "JSDOMConstructorNotConstructable.h"
33#include "JSDOMExceptionHandling.h"
34#include "JSDOMGlobalObjectInlines.h"
35#include "JSDOMOperation.h"
36#include "JSDOMWrapperCache.h"
37#include "ScriptExecutionContext.h"
38#include "WebCoreJSClientData.h"
39#include <JavaScriptCore/FunctionPrototype.h>
40#include <JavaScriptCore/HeapAnalyzer.h>
41#include <JavaScriptCore/JSCInlines.h>
42#include <JavaScriptCore/JSDestructibleObjectHeapCellType.h>
43#include <JavaScriptCore/SlotVisitorMacros.h>
44#include <JavaScriptCore/SubspaceInlines.h>
45#include <wtf/GetPtr.h>
46#include <wtf/PointerPreparations.h>
47#include <wtf/URL.h>
48
49#if ENABLE(WEBGL)
50#include "JSDOMConvertBoolean.h"
51#include "JSDOMConvertBufferSource.h"
52#include "JSDOMConvertDictionary.h"
53#include "JSDOMConvertInterface.h"
54#include "JSDOMConvertNullable.h"
55#include "JSDOMConvertNumbers.h"
56#include "JSDOMConvertSequences.h"
57#include "JSDOMConvertStrings.h"
58#include "JSDOMConvertUnion.h"
59#include "JSDOMConvertWebGL.h"
60#include "JSHTMLCanvasElement.h"
61#include "JSHTMLImageElement.h"
62#include "JSHTMLVideoElement.h"
63#include "JSImageBitmap.h"
64#include "JSImageData.h"
65#include "JSWebGLActiveInfo.h"
66#include "JSWebGLBuffer.h"
67#include "JSWebGLContextAttributes.h"
68#include "JSWebGLFramebuffer.h"
69#include "JSWebGLProgram.h"
70#include "JSWebGLRenderbuffer.h"
71#include "JSWebGLShader.h"
72#include "JSWebGLShaderPrecisionFormat.h"
73#include "JSWebGLTexture.h"
74#include "JSWebGLUniformLocation.h"
75#include <JavaScriptCore/JSArray.h>
76#include <wtf/Variant.h>
77#endif
78
79#if ENABLE(WEBGL) && ENABLE(WEBXR)
80#include "DOMPromiseProxy.h"
81#include "JSDOMConvertPromise.h"
82#include "JSDOMOperationReturningPromise.h"
83#endif
84
85#if ENABLE(WEBGL) || (ENABLE(WEBGL) && ENABLE(WEBXR))
86#include "IDLTypes.h"
87#include "JSDOMConvertBase.h"
88#include "JSDOMGlobalObject.h"
89#endif
90
91
92namespace WebCore {
93using namespace JSC;
94
95// Functions
96
97#if ENABLE(WEBGL)
98static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_activeTexture);
99#endif
100#if ENABLE(WEBGL)
101static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_attachShader);
102#endif
103#if ENABLE(WEBGL)
104static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_bindAttribLocation);
105#endif
106#if ENABLE(WEBGL)
107static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_bindBuffer);
108#endif
109#if ENABLE(WEBGL)
110static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_bindFramebuffer);
111#endif
112#if ENABLE(WEBGL)
113static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_bindRenderbuffer);
114#endif
115#if ENABLE(WEBGL)
116static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_bindTexture);
117#endif
118#if ENABLE(WEBGL)
119static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_blendColor);
120#endif
121#if ENABLE(WEBGL)
122static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_blendEquation);
123#endif
124#if ENABLE(WEBGL)
125static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_blendEquationSeparate);
126#endif
127#if ENABLE(WEBGL)
128static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_blendFunc);
129#endif
130#if ENABLE(WEBGL)
131static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_blendFuncSeparate);
132#endif
133#if ENABLE(WEBGL)
134static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_bufferData);
135#endif
136#if ENABLE(WEBGL)
137static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_bufferSubData);
138#endif
139#if ENABLE(WEBGL)
140static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_checkFramebufferStatus);
141#endif
142#if ENABLE(WEBGL)
143static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_clear);
144#endif
145#if ENABLE(WEBGL)
146static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_clearColor);
147#endif
148#if ENABLE(WEBGL)
149static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_clearDepth);
150#endif
151#if ENABLE(WEBGL)
152static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_clearStencil);
153#endif
154#if ENABLE(WEBGL)
155static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_colorMask);
156#endif
157#if ENABLE(WEBGL)
158static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_compileShader);
159#endif
160#if ENABLE(WEBGL)
161static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_texImage2D);
162#endif
163#if ENABLE(WEBGL)
164static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_texSubImage2D);
165#endif
166#if ENABLE(WEBGL)
167static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_compressedTexImage2D);
168#endif
169#if ENABLE(WEBGL)
170static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_compressedTexSubImage2D);
171#endif
172#if ENABLE(WEBGL)
173static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_copyTexImage2D);
174#endif
175#if ENABLE(WEBGL)
176static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_copyTexSubImage2D);
177#endif
178#if ENABLE(WEBGL)
179static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_createBuffer);
180#endif
181#if ENABLE(WEBGL)
182static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_createFramebuffer);
183#endif
184#if ENABLE(WEBGL)
185static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_createProgram);
186#endif
187#if ENABLE(WEBGL)
188static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_createRenderbuffer);
189#endif
190#if ENABLE(WEBGL)
191static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_createShader);
192#endif
193#if ENABLE(WEBGL)
194static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_createTexture);
195#endif
196#if ENABLE(WEBGL)
197static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_cullFace);
198#endif
199#if ENABLE(WEBGL)
200static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_deleteBuffer);
201#endif
202#if ENABLE(WEBGL)
203static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_deleteFramebuffer);
204#endif
205#if ENABLE(WEBGL)
206static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_deleteProgram);
207#endif
208#if ENABLE(WEBGL)
209static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_deleteRenderbuffer);
210#endif
211#if ENABLE(WEBGL)
212static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_deleteShader);
213#endif
214#if ENABLE(WEBGL)
215static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_deleteTexture);
216#endif
217#if ENABLE(WEBGL)
218static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_depthFunc);
219#endif
220#if ENABLE(WEBGL)
221static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_depthMask);
222#endif
223#if ENABLE(WEBGL)
224static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_depthRange);
225#endif
226#if ENABLE(WEBGL)
227static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_detachShader);
228#endif
229#if ENABLE(WEBGL)
230static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_disable);
231#endif
232#if ENABLE(WEBGL)
233static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_disableVertexAttribArray);
234#endif
235#if ENABLE(WEBGL)
236static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_drawArrays);
237#endif
238#if ENABLE(WEBGL)
239static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_drawElements);
240#endif
241#if ENABLE(WEBGL)
242static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_enable);
243#endif
244#if ENABLE(WEBGL)
245static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_enableVertexAttribArray);
246#endif
247#if ENABLE(WEBGL)
248static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_finish);
249#endif
250#if ENABLE(WEBGL)
251static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_flush);
252#endif
253#if ENABLE(WEBGL)
254static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_framebufferRenderbuffer);
255#endif
256#if ENABLE(WEBGL)
257static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_framebufferTexture2D);
258#endif
259#if ENABLE(WEBGL)
260static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_frontFace);
261#endif
262#if ENABLE(WEBGL)
263static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_generateMipmap);
264#endif
265#if ENABLE(WEBGL)
266static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_getActiveAttrib);
267#endif
268#if ENABLE(WEBGL)
269static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_getActiveUniform);
270#endif
271#if ENABLE(WEBGL)
272static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_getAttachedShaders);
273#endif
274#if ENABLE(WEBGL)
275static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_getAttribLocation);
276#endif
277#if ENABLE(WEBGL)
278static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_getBufferParameter);
279#endif
280#if ENABLE(WEBGL)
281static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_getContextAttributes);
282#endif
283#if ENABLE(WEBGL)
284static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_getError);
285#endif
286#if ENABLE(WEBGL)
287static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_getSupportedExtensions);
288#endif
289#if ENABLE(WEBGL)
290static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_getExtension);
291#endif
292#if ENABLE(WEBGL)
293static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_getFramebufferAttachmentParameter);
294#endif
295#if ENABLE(WEBGL)
296static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_getParameter);
297#endif
298#if ENABLE(WEBGL)
299static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_getProgramParameter);
300#endif
301#if ENABLE(WEBGL)
302static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_getProgramInfoLog);
303#endif
304#if ENABLE(WEBGL)
305static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_getRenderbufferParameter);
306#endif
307#if ENABLE(WEBGL)
308static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_getShaderParameter);
309#endif
310#if ENABLE(WEBGL)
311static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_getShaderInfoLog);
312#endif
313#if ENABLE(WEBGL)
314static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_getShaderPrecisionFormat);
315#endif
316#if ENABLE(WEBGL)
317static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_getShaderSource);
318#endif
319#if ENABLE(WEBGL)
320static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_getTexParameter);
321#endif
322#if ENABLE(WEBGL)
323static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_getUniform);
324#endif
325#if ENABLE(WEBGL)
326static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_getUniformLocation);
327#endif
328#if ENABLE(WEBGL)
329static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_getVertexAttrib);
330#endif
331#if ENABLE(WEBGL)
332static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_getVertexAttribOffset);
333#endif
334#if ENABLE(WEBGL)
335static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_hint);
336#endif
337#if ENABLE(WEBGL)
338static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_isBuffer);
339#endif
340#if ENABLE(WEBGL)
341static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_isContextLost);
342#endif
343#if ENABLE(WEBGL)
344static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_isEnabled);
345#endif
346#if ENABLE(WEBGL)
347static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_isFramebuffer);
348#endif
349#if ENABLE(WEBGL)
350static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_isProgram);
351#endif
352#if ENABLE(WEBGL)
353static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_isRenderbuffer);
354#endif
355#if ENABLE(WEBGL)
356static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_isShader);
357#endif
358#if ENABLE(WEBGL)
359static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_isTexture);
360#endif
361#if ENABLE(WEBGL)
362static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_lineWidth);
363#endif
364#if ENABLE(WEBGL)
365static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_linkProgram);
366#endif
367#if ENABLE(WEBGL) && ENABLE(WEBXR)
368static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_makeXRCompatible);
369#endif
370#if ENABLE(WEBGL)
371static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_pixelStorei);
372#endif
373#if ENABLE(WEBGL)
374static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_polygonOffset);
375#endif
376#if ENABLE(WEBGL)
377static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_readPixels);
378#endif
379#if ENABLE(WEBGL)
380static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_renderbufferStorage);
381#endif
382#if ENABLE(WEBGL)
383static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_sampleCoverage);
384#endif
385#if ENABLE(WEBGL)
386static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_scissor);
387#endif
388#if ENABLE(WEBGL)
389static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_shaderSource);
390#endif
391#if ENABLE(WEBGL)
392static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_stencilFunc);
393#endif
394#if ENABLE(WEBGL)
395static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_stencilFuncSeparate);
396#endif
397#if ENABLE(WEBGL)
398static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_stencilMask);
399#endif
400#if ENABLE(WEBGL)
401static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_stencilMaskSeparate);
402#endif
403#if ENABLE(WEBGL)
404static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_stencilOp);
405#endif
406#if ENABLE(WEBGL)
407static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_stencilOpSeparate);
408#endif
409#if ENABLE(WEBGL)
410static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_texParameterf);
411#endif
412#if ENABLE(WEBGL)
413static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_texParameteri);
414#endif
415#if ENABLE(WEBGL)
416static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_uniform1f);
417#endif
418#if ENABLE(WEBGL)
419static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_uniform2f);
420#endif
421#if ENABLE(WEBGL)
422static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_uniform3f);
423#endif
424#if ENABLE(WEBGL)
425static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_uniform4f);
426#endif
427#if ENABLE(WEBGL)
428static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_uniform1i);
429#endif
430#if ENABLE(WEBGL)
431static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_uniform2i);
432#endif
433#if ENABLE(WEBGL)
434static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_uniform3i);
435#endif
436#if ENABLE(WEBGL)
437static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_uniform4i);
438#endif
439#if ENABLE(WEBGL)
440static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_uniform1fv);
441#endif
442#if ENABLE(WEBGL)
443static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_uniform2fv);
444#endif
445#if ENABLE(WEBGL)
446static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_uniform3fv);
447#endif
448#if ENABLE(WEBGL)
449static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_uniform4fv);
450#endif
451#if ENABLE(WEBGL)
452static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_uniform1iv);
453#endif
454#if ENABLE(WEBGL)
455static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_uniform2iv);
456#endif
457#if ENABLE(WEBGL)
458static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_uniform3iv);
459#endif
460#if ENABLE(WEBGL)
461static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_uniform4iv);
462#endif
463#if ENABLE(WEBGL)
464static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_uniformMatrix2fv);
465#endif
466#if ENABLE(WEBGL)
467static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_uniformMatrix3fv);
468#endif
469#if ENABLE(WEBGL)
470static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_uniformMatrix4fv);
471#endif
472#if ENABLE(WEBGL)
473static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_useProgram);
474#endif
475#if ENABLE(WEBGL)
476static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_validateProgram);
477#endif
478#if ENABLE(WEBGL)
479static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_vertexAttrib1f);
480#endif
481#if ENABLE(WEBGL)
482static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_vertexAttrib2f);
483#endif
484#if ENABLE(WEBGL)
485static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_vertexAttrib3f);
486#endif
487#if ENABLE(WEBGL)
488static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_vertexAttrib4f);
489#endif
490#if ENABLE(WEBGL)
491static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_vertexAttrib1fv);
492#endif
493#if ENABLE(WEBGL)
494static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_vertexAttrib2fv);
495#endif
496#if ENABLE(WEBGL)
497static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_vertexAttrib3fv);
498#endif
499#if ENABLE(WEBGL)
500static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_vertexAttrib4fv);
501#endif
502#if ENABLE(WEBGL)
503static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_vertexAttribPointer);
504#endif
505#if ENABLE(WEBGL)
506static JSC_DECLARE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_viewport);
507#endif
508
509// Attributes
510
511static JSC_DECLARE_CUSTOM_GETTER(jsWebGLRenderingContextConstructor);
512#if ENABLE(WEBGL)
513static JSC_DECLARE_CUSTOM_GETTER(jsWebGLRenderingContext_canvas);
514#endif
515#if ENABLE(WEBGL)
516static JSC_DECLARE_CUSTOM_GETTER(jsWebGLRenderingContext_drawingBufferWidth);
517#endif
518#if ENABLE(WEBGL)
519static JSC_DECLARE_CUSTOM_GETTER(jsWebGLRenderingContext_drawingBufferHeight);
520#endif
521
522class JSWebGLRenderingContextPrototype final : public JSC::JSNonFinalObject {
523public:
524 using Base = JSC::JSNonFinalObject;
525 static JSWebGLRenderingContextPrototype* create(JSC::VM& vm, JSDOMGlobalObject* globalObject, JSC::Structure* structure)
526 {
527 JSWebGLRenderingContextPrototype* ptr = new (NotNull, JSC::allocateCell<JSWebGLRenderingContextPrototype>(vm.heap)) JSWebGLRenderingContextPrototype(vm, globalObject, structure);
528 ptr->finishCreation(vm);
529 return ptr;
530 }
531
532 DECLARE_INFO;
533 template<typename CellType, JSC::SubspaceAccess>
534 static JSC::IsoSubspace* subspaceFor(JSC::VM& vm)
535 {
536 STATIC_ASSERT_ISO_SUBSPACE_SHARABLE(JSWebGLRenderingContextPrototype, Base);
537 return &vm.plainObjectSpace;
538 }
539 static JSC::Structure* createStructure(JSC::VM& vm, JSC::JSGlobalObject* globalObject, JSC::JSValue prototype)
540 {
541 return JSC::Structure::create(vm, globalObject, prototype, JSC::TypeInfo(JSC::ObjectType, StructureFlags), info());
542 }
543
544private:
545 JSWebGLRenderingContextPrototype(JSC::VM& vm, JSC::JSGlobalObject*, JSC::Structure* structure)
546 : JSC::JSNonFinalObject(vm, structure)
547 {
548 }
549
550 void finishCreation(JSC::VM&);
551public:
552 static constexpr unsigned StructureFlags = Base::StructureFlags | JSC::HasStaticPropertyTable;
553};
554STATIC_ASSERT_ISO_SUBSPACE_SHARABLE(JSWebGLRenderingContextPrototype, JSWebGLRenderingContextPrototype::Base);
555
556using JSWebGLRenderingContextDOMConstructor = JSDOMConstructorNotConstructable<JSWebGLRenderingContext>;
557
558/* Hash table for Constructor */
559
560static const struct CompactHashIndex JSWebGLRenderingContextConstructorTableIndex[1057] = {
561 { -1, -1 },
562 { -1, -1 },
563 { 22, 1024 },
564 { -1, -1 },
565 { -1, -1 },
566 { -1, -1 },
567 { -1, -1 },
568 { -1, -1 },
569 { -1, -1 },
570 { -1, -1 },
571 { -1, -1 },
572 { -1, -1 },
573 { -1, -1 },
574 { -1, -1 },
575 { 4, 1056 },
576 { -1, -1 },
577 { -1, -1 },
578 { 21, -1 },
579 { 294, -1 },
580 { -1, -1 },
581 { -1, -1 },
582 { -1, -1 },
583 { -1, -1 },
584 { -1, -1 },
585 { -1, -1 },
586 { -1, -1 },
587 { 204, -1 },
588 { -1, -1 },
589 { 213, -1 },
590 { -1, -1 },
591 { -1, -1 },
592 { 152, -1 },
593 { -1, -1 },
594 { -1, -1 },
595 { -1, -1 },
596 { -1, -1 },
597 { -1, -1 },
598 { -1, -1 },
599 { -1, -1 },
600 { -1, -1 },
601 { -1, -1 },
602 { -1, -1 },
603 { -1, -1 },
604 { -1, -1 },
605 { -1, -1 },
606 { 283, -1 },
607 { -1, -1 },
608 { -1, -1 },
609 { -1, -1 },
610 { -1, -1 },
611 { -1, -1 },
612 { -1, -1 },
613 { -1, -1 },
614 { 43, -1 },
615 { 119, -1 },
616 { -1, -1 },
617 { 155, -1 },
618 { -1, -1 },
619 { 228, -1 },
620 { -1, -1 },
621 { -1, -1 },
622 { -1, -1 },
623 { -1, -1 },
624 { -1, -1 },
625 { -1, -1 },
626 { -1, -1 },
627 { -1, -1 },
628 { -1, -1 },
629 { 262, -1 },
630 { 193, -1 },
631 { -1, -1 },
632 { 184, -1 },
633 { -1, -1 },
634 { -1, -1 },
635 { -1, -1 },
636 { -1, -1 },
637 { -1, -1 },
638 { 117, -1 },
639 { -1, -1 },
640 { 286, -1 },
641 { -1, -1 },
642 { -1, -1 },
643 { 151, -1 },
644 { 254, -1 },
645 { -1, -1 },
646 { -1, -1 },
647 { -1, -1 },
648 { -1, -1 },
649 { -1, -1 },
650 { -1, -1 },
651 { -1, -1 },
652 { 12, 1033 },
653 { -1, -1 },
654 { -1, -1 },
655 { -1, -1 },
656 { -1, -1 },
657 { -1, -1 },
658 { 229, -1 },
659 { -1, -1 },
660 { -1, -1 },
661 { -1, -1 },
662 { -1, -1 },
663 { -1, -1 },
664 { -1, -1 },
665 { -1, -1 },
666 { -1, -1 },
667 { -1, -1 },
668 { -1, -1 },
669 { -1, -1 },
670 { -1, -1 },
671 { -1, -1 },
672 { -1, -1 },
673 { -1, -1 },
674 { -1, -1 },
675 { -1, -1 },
676 { -1, -1 },
677 { -1, -1 },
678 { -1, -1 },
679 { 243, -1 },
680 { -1, -1 },
681 { -1, -1 },
682 { -1, -1 },
683 { -1, -1 },
684 { -1, -1 },
685 { -1, -1 },
686 { -1, -1 },
687 { -1, -1 },
688 { 36, -1 },
689 { -1, -1 },
690 { 0, 1044 },
691 { -1, -1 },
692 { -1, -1 },
693 { -1, -1 },
694 { -1, -1 },
695 { -1, -1 },
696 { 111, -1 },
697 { -1, -1 },
698 { -1, -1 },
699 { -1, -1 },
700 { -1, -1 },
701 { -1, -1 },
702 { -1, -1 },
703 { -1, -1 },
704 { -1, -1 },
705 { -1, -1 },
706 { -1, -1 },
707 { -1, -1 },
708 { -1, -1 },
709 { -1, -1 },
710 { -1, -1 },
711 { -1, -1 },
712 { -1, -1 },
713 { -1, -1 },
714 { -1, -1 },
715 { -1, -1 },
716 { -1, -1 },
717 { 194, -1 },
718 { -1, -1 },
719 { -1, -1 },
720 { -1, -1 },
721 { -1, -1 },
722 { -1, -1 },
723 { -1, -1 },
724 { -1, -1 },
725 { -1, -1 },
726 { 141, -1 },
727 { -1, -1 },
728 { -1, -1 },
729 { -1, -1 },
730 { -1, -1 },
731 { -1, -1 },
732 { -1, -1 },
733 { -1, -1 },
734 { 266, -1 },
735 { -1, -1 },
736 { -1, -1 },
737 { 31, -1 },
738 { 217, -1 },
739 { -1, -1 },
740 { -1, -1 },
741 { -1, -1 },
742 { -1, -1 },
743 { 215, -1 },
744 { -1, -1 },
745 { -1, -1 },
746 { -1, -1 },
747 { 41, -1 },
748 { -1, -1 },
749 { -1, -1 },
750 { -1, -1 },
751 { -1, -1 },
752 { -1, -1 },
753 { -1, -1 },
754 { -1, -1 },
755 { -1, -1 },
756 { -1, -1 },
757 { -1, -1 },
758 { -1, -1 },
759 { -1, -1 },
760 { 47, -1 },
761 { 116, -1 },
762 { -1, -1 },
763 { -1, -1 },
764 { 93, 1034 },
765 { 172, -1 },
766 { -1, -1 },
767 { -1, -1 },
768 { -1, -1 },
769 { 224, 1045 },
770 { -1, -1 },
771 { 96, -1 },
772 { 236, -1 },
773 { -1, -1 },
774 { -1, -1 },
775 { -1, -1 },
776 { -1, -1 },
777 { -1, -1 },
778 { -1, -1 },
779 { 50, -1 },
780 { -1, -1 },
781 { -1, -1 },
782 { -1, -1 },
783 { -1, -1 },
784 { -1, -1 },
785 { -1, -1 },
786 { -1, -1 },
787 { -1, -1 },
788 { -1, -1 },
789 { -1, -1 },
790 { 35, -1 },
791 { 276, -1 },
792 { 125, -1 },
793 { -1, -1 },
794 { -1, -1 },
795 { 30, -1 },
796 { -1, -1 },
797 { -1, -1 },
798 { -1, -1 },
799 { -1, -1 },
800 { -1, -1 },
801 { -1, -1 },
802 { -1, -1 },
803 { -1, -1 },
804 { -1, -1 },
805 { -1, -1 },
806 { -1, -1 },
807 { -1, -1 },
808 { -1, -1 },
809 { -1, -1 },
810 { 202, -1 },
811 { 14, -1 },
812 { -1, -1 },
813 { -1, -1 },
814 { -1, -1 },
815 { -1, -1 },
816 { -1, -1 },
817 { 86, -1 },
818 { -1, -1 },
819 { 6, -1 },
820 { 105, 1030 },
821 { -1, -1 },
822 { -1, -1 },
823 { -1, -1 },
824 { 44, 1026 },
825 { -1, -1 },
826 { -1, -1 },
827 { -1, -1 },
828 { -1, -1 },
829 { -1, -1 },
830 { -1, -1 },
831 { -1, -1 },
832 { -1, -1 },
833 { -1, -1 },
834 { 5, 1042 },
835 { -1, -1 },
836 { -1, -1 },
837 { 63, -1 },
838 { 77, -1 },
839 { 296, -1 },
840 { -1, -1 },
841 { -1, -1 },
842 { 165, -1 },
843 { 68, 1027 },
844 { 223, -1 },
845 { -1, -1 },
846 { -1, -1 },
847 { 144, -1 },
848 { -1, -1 },
849 { -1, -1 },
850 { -1, -1 },
851 { -1, -1 },
852 { 201, -1 },
853 { -1, -1 },
854 { -1, -1 },
855 { -1, -1 },
856 { -1, -1 },
857 { 178, -1 },
858 { -1, -1 },
859 { -1, -1 },
860 { -1, -1 },
861 { -1, -1 },
862 { -1, -1 },
863 { -1, -1 },
864 { -1, -1 },
865 { 191, -1 },
866 { -1, -1 },
867 { -1, -1 },
868 { -1, -1 },
869 { -1, -1 },
870 { 88, -1 },
871 { 80, -1 },
872 { -1, -1 },
873 { -1, -1 },
874 { -1, -1 },
875 { -1, -1 },
876 { -1, -1 },
877 { -1, -1 },
878 { -1, -1 },
879 { -1, -1 },
880 { -1, -1 },
881 { -1, -1 },
882 { 66, -1 },
883 { -1, -1 },
884 { -1, -1 },
885 { 167, -1 },
886 { -1, -1 },
887 { -1, -1 },
888 { -1, -1 },
889 { 69, 1029 },
890 { -1, -1 },
891 { -1, -1 },
892 { -1, -1 },
893 { -1, -1 },
894 { 60, 1035 },
895 { -1, -1 },
896 { -1, -1 },
897 { -1, -1 },
898 { 287, -1 },
899 { 62, -1 },
900 { -1, -1 },
901 { 143, -1 },
902 { 28, -1 },
903 { 159, -1 },
904 { -1, -1 },
905 { -1, -1 },
906 { -1, -1 },
907 { -1, -1 },
908 { 166, -1 },
909 { -1, -1 },
910 { -1, -1 },
911 { -1, -1 },
912 { -1, -1 },
913 { 110, -1 },
914 { 147, -1 },
915 { -1, -1 },
916 { -1, -1 },
917 { -1, -1 },
918 { -1, -1 },
919 { -1, -1 },
920 { 291, -1 },
921 { -1, -1 },
922 { -1, -1 },
923 { -1, -1 },
924 { 11, -1 },
925 { -1, -1 },
926 { -1, -1 },
927 { -1, -1 },
928 { -1, -1 },
929 { -1, -1 },
930 { -1, -1 },
931 { -1, -1 },
932 { -1, -1 },
933 { -1, -1 },
934 { -1, -1 },
935 { -1, -1 },
936 { -1, -1 },
937 { -1, -1 },
938 { -1, -1 },
939 { -1, -1 },
940 { 265, -1 },
941 { 179, 1039 },
942 { -1, -1 },
943 { -1, -1 },
944 { 235, -1 },
945 { -1, -1 },
946 { 196, -1 },
947 { 272, -1 },
948 { -1, -1 },
949 { -1, -1 },
950 { 29, -1 },
951 { -1, -1 },
952 { 118, -1 },
953 { 221, -1 },
954 { -1, -1 },
955 { -1, -1 },
956 { 45, 1041 },
957 { -1, -1 },
958 { -1, -1 },
959 { -1, -1 },
960 { 277, -1 },
961 { -1, -1 },
962 { -1, -1 },
963 { -1, -1 },
964 { -1, -1 },
965 { -1, -1 },
966 { 274, -1 },
967 { -1, -1 },
968 { -1, -1 },
969 { 101, 1052 },
970 { -1, -1 },
971 { -1, -1 },
972 { -1, -1 },
973 { -1, -1 },
974 { 7, -1 },
975 { 51, -1 },
976 { -1, -1 },
977 { -1, -1 },
978 { -1, -1 },
979 { -1, -1 },
980 { -1, -1 },
981 { -1, -1 },
982 { -1, -1 },
983 { -1, -1 },
984 { 10, -1 },
985 { -1, -1 },
986 { -1, -1 },
987 { -1, -1 },
988 { 113, -1 },
989 { -1, -1 },
990 { -1, -1 },
991 { 180, -1 },
992 { -1, -1 },
993 { 220, 1043 },
994 { -1, -1 },
995 { -1, -1 },
996 { -1, -1 },
997 { -1, -1 },
998 { 99, -1 },
999 { -1, -1 },
1000 { -1, -1 },
1001 { -1, -1 },
1002 { 231, -1 },
1003 { -1, -1 },
1004 { -1, -1 },
1005 { -1, -1 },
1006 { -1, -1 },
1007 { -1, -1 },
1008 { -1, -1 },
1009 { -1, -1 },
1010 { -1, -1 },
1011 { -1, -1 },
1012 { -1, -1 },
1013 { -1, -1 },
1014 { 3, 1025 },
1015 { -1, -1 },
1016 { -1, -1 },
1017 { -1, -1 },
1018 { -1, -1 },
1019 { -1, -1 },
1020 { -1, -1 },
1021 { 185, -1 },
1022 { -1, -1 },
1023 { -1, -1 },
1024 { -1, -1 },
1025 { 59, -1 },
1026 { 198, -1 },
1027 { -1, -1 },
1028 { -1, -1 },
1029 { 205, -1 },
1030 { -1, -1 },
1031 { -1, -1 },
1032 { -1, -1 },
1033 { -1, -1 },
1034 { 233, -1 },
1035 { -1, -1 },
1036 { -1, -1 },
1037 { -1, -1 },
1038 { 267, -1 },
1039 { -1, -1 },
1040 { -1, -1 },
1041 { -1, -1 },
1042 { -1, -1 },
1043 { -1, -1 },
1044 { -1, -1 },
1045 { -1, -1 },
1046 { -1, -1 },
1047 { -1, -1 },
1048 { 82, -1 },
1049 { -1, -1 },
1050 { 87, 1036 },
1051 { -1, -1 },
1052 { 15, -1 },
1053 { -1, -1 },
1054 { -1, -1 },
1055 { -1, -1 },
1056 { -1, -1 },
1057 { 255, -1 },
1058 { -1, -1 },
1059 { -1, -1 },
1060 { 70, -1 },
1061 { -1, -1 },
1062 { -1, -1 },
1063 { -1, -1 },
1064 { -1, -1 },
1065 { 20, -1 },
1066 { -1, -1 },
1067 { -1, -1 },
1068 { 192, 1054 },
1069 { -1, -1 },
1070 { 280, -1 },
1071 { -1, -1 },
1072 { -1, -1 },
1073 { -1, -1 },
1074 { -1, -1 },
1075 { -1, -1 },
1076 { -1, -1 },
1077 { -1, -1 },
1078 { -1, -1 },
1079 { -1, -1 },
1080 { -1, -1 },
1081 { 71, -1 },
1082 { -1, -1 },
1083 { -1, -1 },
1084 { -1, -1 },
1085 { -1, -1 },
1086 { -1, -1 },
1087 { -1, -1 },
1088 { -1, -1 },
1089 { -1, -1 },
1090 { -1, -1 },
1091 { 234, -1 },
1092 { -1, -1 },
1093 { 218, -1 },
1094 { 97, -1 },
1095 { -1, -1 },
1096 { -1, -1 },
1097 { -1, -1 },
1098 { -1, -1 },
1099 { -1, -1 },
1100 { -1, -1 },
1101 { -1, -1 },
1102 { -1, -1 },
1103 { -1, -1 },
1104 { -1, -1 },
1105 { -1, -1 },
1106 { -1, -1 },
1107 { -1, -1 },
1108 { -1, -1 },
1109 { 89, -1 },
1110 { -1, -1 },
1111 { -1, -1 },
1112 { 114, 1028 },
1113 { -1, -1 },
1114 { -1, -1 },
1115 { 65, -1 },
1116 { 252, -1 },
1117 { -1, -1 },
1118 { -1, -1 },
1119 { -1, -1 },
1120 { 209, -1 },
1121 { -1, -1 },
1122 { -1, -1 },
1123 { 25, -1 },
1124 { -1, -1 },
1125 { -1, -1 },
1126 { 200, 1050 },
1127 { 37, -1 },
1128 { -1, -1 },
1129 { -1, -1 },
1130 { -1, -1 },
1131 { 94, 1040 },
1132 { -1, -1 },
1133 { -1, -1 },
1134 { -1, -1 },
1135 { -1, -1 },
1136 { -1, -1 },
1137 { -1, -1 },
1138 { -1, -1 },
1139 { -1, -1 },
1140 { -1, -1 },
1141 { 226, -1 },
1142 { -1, -1 },
1143 { -1, -1 },
1144 { -1, -1 },
1145 { -1, -1 },
1146 { 295, -1 },
1147 { 138, -1 },
1148 { 278, -1 },
1149 { 257, -1 },
1150 { 174, -1 },
1151 { -1, -1 },
1152 { 162, -1 },
1153 { -1, -1 },
1154 { 74, -1 },
1155 { -1, -1 },
1156 { -1, -1 },
1157 { -1, -1 },
1158 { 33, -1 },
1159 { -1, -1 },
1160 { -1, -1 },
1161 { 55, -1 },
1162 { 40, 1047 },
1163 { 281, -1 },
1164 { 42, -1 },
1165 { -1, -1 },
1166 { -1, -1 },
1167 { 212, -1 },
1168 { -1, -1 },
1169 { -1, -1 },
1170 { -1, -1 },
1171 { -1, -1 },
1172 { -1, -1 },
1173 { -1, -1 },
1174 { 137, 1055 },
1175 { -1, -1 },
1176 { -1, -1 },
1177 { -1, -1 },
1178 { -1, -1 },
1179 { -1, -1 },
1180 { -1, -1 },
1181 { 128, -1 },
1182 { -1, -1 },
1183 { 195, -1 },
1184 { -1, -1 },
1185 { -1, -1 },
1186 { -1, -1 },
1187 { -1, -1 },
1188 { 288, -1 },
1189 { -1, -1 },
1190 { -1, -1 },
1191 { 284, -1 },
1192 { -1, -1 },
1193 { -1, -1 },
1194 { -1, -1 },
1195 { -1, -1 },
1196 { 32, 1046 },
1197 { -1, -1 },
1198 { 131, -1 },
1199 { -1, -1 },
1200 { -1, -1 },
1201 { -1, -1 },
1202 { -1, -1 },
1203 { -1, -1 },
1204 { -1, -1 },
1205 { -1, -1 },
1206 { 90, -1 },
1207 { -1, -1 },
1208 { 16, -1 },
1209 { -1, -1 },
1210 { -1, -1 },
1211 { -1, -1 },
1212 { -1, -1 },
1213 { -1, -1 },
1214 { 157, -1 },
1215 { 48, -1 },
1216 { -1, -1 },
1217 { -1, -1 },
1218 { 230, -1 },
1219 { -1, -1 },
1220 { 216, -1 },
1221 { 190, -1 },
1222 { -1, -1 },
1223 { 49, -1 },
1224 { 293, -1 },
1225 { 24, -1 },
1226 { -1, -1 },
1227 { -1, -1 },
1228 { -1, -1 },
1229 { -1, -1 },
1230 { -1, -1 },
1231 { 148, -1 },
1232 { -1, -1 },
1233 { -1, -1 },
1234 { -1, -1 },
1235 { -1, -1 },
1236 { 130, -1 },
1237 { -1, -1 },
1238 { -1, -1 },
1239 { -1, -1 },
1240 { -1, -1 },
1241 { 222, -1 },
1242 { -1, -1 },
1243 { -1, -1 },
1244 { -1, -1 },
1245 { 161, -1 },
1246 { -1, -1 },
1247 { 249, -1 },
1248 { 240, -1 },
1249 { 253, -1 },
1250 { -1, -1 },
1251 { 206, -1 },
1252 { -1, -1 },
1253 { -1, -1 },
1254 { -1, -1 },
1255 { 13, -1 },
1256 { -1, -1 },
1257 { 46, -1 },
1258 { 292, -1 },
1259 { -1, -1 },
1260 { 177, -1 },
1261 { -1, -1 },
1262 { -1, -1 },
1263 { 8, -1 },
1264 { -1, -1 },
1265 { -1, -1 },
1266 { -1, -1 },
1267 { -1, -1 },
1268 { -1, -1 },
1269 { -1, -1 },
1270 { 56, -1 },
1271 { -1, -1 },
1272 { 57, -1 },
1273 { -1, -1 },
1274 { 163, -1 },
1275 { 248, -1 },
1276 { 273, -1 },
1277 { 263, -1 },
1278 { -1, -1 },
1279 { -1, -1 },
1280 { -1, -1 },
1281 { -1, -1 },
1282 { 72, 1048 },
1283 { 146, -1 },
1284 { -1, -1 },
1285 { 251, -1 },
1286 { -1, -1 },
1287 { 54, -1 },
1288 { -1, -1 },
1289 { -1, -1 },
1290 { 38, -1 },
1291 { -1, -1 },
1292 { -1, -1 },
1293 { 135, -1 },
1294 { 98, -1 },
1295 { -1, -1 },
1296 { -1, -1 },
1297 { -1, -1 },
1298 { 109, -1 },
1299 { -1, -1 },
1300 { 225, -1 },
1301 { -1, -1 },
1302 { 91, -1 },
1303 { -1, -1 },
1304 { -1, -1 },
1305 { 1, -1 },
1306 { 164, -1 },
1307 { -1, -1 },
1308 { -1, -1 },
1309 { -1, -1 },
1310 { 102, 1031 },
1311 { 160, -1 },
1312 { 261, -1 },
1313 { -1, -1 },
1314 { -1, -1 },
1315 { -1, -1 },
1316 { -1, -1 },
1317 { -1, -1 },
1318 { 259, -1 },
1319 { -1, -1 },
1320 { -1, -1 },
1321 { -1, -1 },
1322 { -1, -1 },
1323 { 104, -1 },
1324 { 9, -1 },
1325 { -1, -1 },
1326 { -1, -1 },
1327 { 247, -1 },
1328 { -1, -1 },
1329 { -1, -1 },
1330 { -1, -1 },
1331 { -1, -1 },
1332 { 199, -1 },
1333 { 64, -1 },
1334 { -1, -1 },
1335 { 227, -1 },
1336 { -1, -1 },
1337 { -1, -1 },
1338 { -1, -1 },
1339 { -1, -1 },
1340 { 154, -1 },
1341 { -1, -1 },
1342 { -1, -1 },
1343 { -1, -1 },
1344 { -1, -1 },
1345 { 188, -1 },
1346 { -1, -1 },
1347 { -1, -1 },
1348 { 76, -1 },
1349 { -1, -1 },
1350 { -1, -1 },
1351 { -1, -1 },
1352 { -1, -1 },
1353 { -1, -1 },
1354 { 207, -1 },
1355 { -1, -1 },
1356 { 176, -1 },
1357 { -1, -1 },
1358 { -1, -1 },
1359 { -1, -1 },
1360 { -1, -1 },
1361 { -1, -1 },
1362 { -1, -1 },
1363 { 145, -1 },
1364 { -1, -1 },
1365 { -1, -1 },
1366 { -1, -1 },
1367 { -1, -1 },
1368 { -1, -1 },
1369 { -1, -1 },
1370 { -1, -1 },
1371 { -1, -1 },
1372 { -1, -1 },
1373 { -1, -1 },
1374 { -1, -1 },
1375 { -1, -1 },
1376 { -1, -1 },
1377 { -1, -1 },
1378 { -1, -1 },
1379 { 214, 1051 },
1380 { -1, -1 },
1381 { -1, -1 },
1382 { -1, -1 },
1383 { 19, -1 },
1384 { -1, -1 },
1385 { 26, -1 },
1386 { -1, -1 },
1387 { 67, -1 },
1388 { -1, -1 },
1389 { -1, -1 },
1390 { -1, -1 },
1391 { 210, -1 },
1392 { -1, -1 },
1393 { -1, -1 },
1394 { -1, -1 },
1395 { 92, -1 },
1396 { -1, -1 },
1397 { -1, -1 },
1398 { -1, -1 },
1399 { -1, -1 },
1400 { -1, -1 },
1401 { -1, -1 },
1402 { -1, -1 },
1403 { 85, -1 },
1404 { -1, -1 },
1405 { -1, -1 },
1406 { -1, -1 },
1407 { -1, -1 },
1408 { -1, -1 },
1409 { -1, -1 },
1410 { -1, -1 },
1411 { -1, -1 },
1412 { 246, -1 },
1413 { -1, -1 },
1414 { -1, -1 },
1415 { -1, -1 },
1416 { -1, -1 },
1417 { 115, -1 },
1418 { -1, -1 },
1419 { 103, -1 },
1420 { 95, -1 },
1421 { 203, -1 },
1422 { 84, -1 },
1423 { -1, -1 },
1424 { -1, -1 },
1425 { -1, -1 },
1426 { -1, -1 },
1427 { -1, -1 },
1428 { -1, -1 },
1429 { -1, -1 },
1430 { 149, -1 },
1431 { -1, -1 },
1432 { 181, -1 },
1433 { -1, -1 },
1434 { -1, -1 },
1435 { -1, -1 },
1436 { 2, -1 },
1437 { -1, -1 },
1438 { -1, -1 },
1439 { -1, -1 },
1440 { -1, -1 },
1441 { -1, -1 },
1442 { 112, -1 },
1443 { -1, -1 },
1444 { -1, -1 },
1445 { -1, -1 },
1446 { 81, -1 },
1447 { -1, -1 },
1448 { -1, -1 },
1449 { 123, -1 },
1450 { 120, -1 },
1451 { -1, -1 },
1452 { 106, -1 },
1453 { -1, -1 },
1454 { 173, -1 },
1455 { -1, -1 },
1456 { 156, -1 },
1457 { -1, -1 },
1458 { -1, -1 },
1459 { -1, -1 },
1460 { 175, -1 },
1461 { 34, -1 },
1462 { -1, -1 },
1463 { 73, -1 },
1464 { -1, -1 },
1465 { 132, -1 },
1466 { 279, -1 },
1467 { -1, -1 },
1468 { -1, -1 },
1469 { -1, -1 },
1470 { -1, -1 },
1471 { -1, -1 },
1472 { -1, -1 },
1473 { 78, 1049 },
1474 { -1, -1 },
1475 { -1, -1 },
1476 { -1, -1 },
1477 { -1, -1 },
1478 { -1, -1 },
1479 { -1, -1 },
1480 { -1, -1 },
1481 { -1, -1 },
1482 { 39, -1 },
1483 { -1, -1 },
1484 { -1, -1 },
1485 { -1, -1 },
1486 { -1, -1 },
1487 { -1, -1 },
1488 { -1, -1 },
1489 { -1, -1 },
1490 { -1, -1 },
1491 { -1, -1 },
1492 { -1, -1 },
1493 { -1, -1 },
1494 { -1, -1 },
1495 { -1, -1 },
1496 { -1, -1 },
1497 { -1, -1 },
1498 { 75, -1 },
1499 { 61, -1 },
1500 { -1, -1 },
1501 { 129, -1 },
1502 { -1, -1 },
1503 { 282, -1 },
1504 { 171, -1 },
1505 { -1, -1 },
1506 { -1, -1 },
1507 { -1, -1 },
1508 { 53, -1 },
1509 { -1, -1 },
1510 { -1, -1 },
1511 { -1, -1 },
1512 { -1, -1 },
1513 { 182, -1 },
1514 { -1, -1 },
1515 { 232, -1 },
1516 { -1, -1 },
1517 { 170, -1 },
1518 { 219, -1 },
1519 { -1, -1 },
1520 { 158, 1053 },
1521 { -1, -1 },
1522 { -1, -1 },
1523 { -1, -1 },
1524 { -1, -1 },
1525 { 79, -1 },
1526 { -1, -1 },
1527 { 100, -1 },
1528 { 237, -1 },
1529 { -1, -1 },
1530 { -1, -1 },
1531 { -1, -1 },
1532 { -1, -1 },
1533 { -1, -1 },
1534 { -1, -1 },
1535 { -1, -1 },
1536 { 169, -1 },
1537 { -1, -1 },
1538 { 17, -1 },
1539 { -1, -1 },
1540 { -1, -1 },
1541 { -1, -1 },
1542 { 58, -1 },
1543 { 133, -1 },
1544 { -1, -1 },
1545 { -1, -1 },
1546 { 124, -1 },
1547 { -1, -1 },
1548 { 18, -1 },
1549 { -1, -1 },
1550 { -1, -1 },
1551 { -1, -1 },
1552 { -1, -1 },
1553 { -1, -1 },
1554 { -1, -1 },
1555 { 107, -1 },
1556 { 83, -1 },
1557 { -1, -1 },
1558 { -1, -1 },
1559 { -1, -1 },
1560 { 239, -1 },
1561 { -1, -1 },
1562 { -1, -1 },
1563 { -1, -1 },
1564 { 153, -1 },
1565 { -1, -1 },
1566 { -1, -1 },
1567 { 189, -1 },
1568 { -1, -1 },
1569 { -1, -1 },
1570 { -1, -1 },
1571 { -1, -1 },
1572 { 134, -1 },
1573 { -1, -1 },
1574 { -1, -1 },
1575 { 168, -1 },
1576 { 183, -1 },
1577 { 127, 1032 },
1578 { 285, -1 },
1579 { -1, -1 },
1580 { 245, -1 },
1581 { -1, -1 },
1582 { -1, -1 },
1583 { -1, -1 },
1584 { -1, -1 },
1585 { 23, -1 },
1586 { 27, -1 },
1587 { 52, -1 },
1588 { 108, -1 },
1589 { 121, -1 },
1590 { 122, -1 },
1591 { 126, -1 },
1592 { 136, 1038 },
1593 { 139, -1 },
1594 { 140, -1 },
1595 { 142, 1037 },
1596 { 150, -1 },
1597 { 186, -1 },
1598 { 187, -1 },
1599 { 197, -1 },
1600 { 208, -1 },
1601 { 211, -1 },
1602 { 238, -1 },
1603 { 241, -1 },
1604 { 242, -1 },
1605 { 244, -1 },
1606 { 250, -1 },
1607 { 256, -1 },
1608 { 258, -1 },
1609 { 260, -1 },
1610 { 264, -1 },
1611 { 268, -1 },
1612 { 269, -1 },
1613 { 270, -1 },
1614 { 271, -1 },
1615 { 275, -1 },
1616 { 289, -1 },
1617 { 290, -1 },
1618};
1619
1620
1621static const HashTableValue JSWebGLRenderingContextConstructorTableValues[] =
1622{
1623#if ENABLE(WEBGL)
1624 { "DEPTH_BUFFER_BIT", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x00000100) } },
1625#else
1626 { 0, 0, NoIntrinsic, { 0, 0 } },
1627#endif
1628#if ENABLE(WEBGL)
1629 { "STENCIL_BUFFER_BIT", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x00000400) } },
1630#else
1631 { 0, 0, NoIntrinsic, { 0, 0 } },
1632#endif
1633#if ENABLE(WEBGL)
1634 { "COLOR_BUFFER_BIT", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x00004000) } },
1635#else
1636 { 0, 0, NoIntrinsic, { 0, 0 } },
1637#endif
1638#if ENABLE(WEBGL)
1639 { "POINTS", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0000) } },
1640#else
1641 { 0, 0, NoIntrinsic, { 0, 0 } },
1642#endif
1643#if ENABLE(WEBGL)
1644 { "LINES", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0001) } },
1645#else
1646 { 0, 0, NoIntrinsic, { 0, 0 } },
1647#endif
1648#if ENABLE(WEBGL)
1649 { "LINE_LOOP", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0002) } },
1650#else
1651 { 0, 0, NoIntrinsic, { 0, 0 } },
1652#endif
1653#if ENABLE(WEBGL)
1654 { "LINE_STRIP", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0003) } },
1655#else
1656 { 0, 0, NoIntrinsic, { 0, 0 } },
1657#endif
1658#if ENABLE(WEBGL)
1659 { "TRIANGLES", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0004) } },
1660#else
1661 { 0, 0, NoIntrinsic, { 0, 0 } },
1662#endif
1663#if ENABLE(WEBGL)
1664 { "TRIANGLE_STRIP", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0005) } },
1665#else
1666 { 0, 0, NoIntrinsic, { 0, 0 } },
1667#endif
1668#if ENABLE(WEBGL)
1669 { "TRIANGLE_FAN", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0006) } },
1670#else
1671 { 0, 0, NoIntrinsic, { 0, 0 } },
1672#endif
1673#if ENABLE(WEBGL)
1674 { "ZERO", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0) } },
1675#else
1676 { 0, 0, NoIntrinsic, { 0, 0 } },
1677#endif
1678#if ENABLE(WEBGL)
1679 { "ONE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(1) } },
1680#else
1681 { 0, 0, NoIntrinsic, { 0, 0 } },
1682#endif
1683#if ENABLE(WEBGL)
1684 { "SRC_COLOR", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0300) } },
1685#else
1686 { 0, 0, NoIntrinsic, { 0, 0 } },
1687#endif
1688#if ENABLE(WEBGL)
1689 { "ONE_MINUS_SRC_COLOR", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0301) } },
1690#else
1691 { 0, 0, NoIntrinsic, { 0, 0 } },
1692#endif
1693#if ENABLE(WEBGL)
1694 { "SRC_ALPHA", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0302) } },
1695#else
1696 { 0, 0, NoIntrinsic, { 0, 0 } },
1697#endif
1698#if ENABLE(WEBGL)
1699 { "ONE_MINUS_SRC_ALPHA", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0303) } },
1700#else
1701 { 0, 0, NoIntrinsic, { 0, 0 } },
1702#endif
1703#if ENABLE(WEBGL)
1704 { "DST_ALPHA", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0304) } },
1705#else
1706 { 0, 0, NoIntrinsic, { 0, 0 } },
1707#endif
1708#if ENABLE(WEBGL)
1709 { "ONE_MINUS_DST_ALPHA", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0305) } },
1710#else
1711 { 0, 0, NoIntrinsic, { 0, 0 } },
1712#endif
1713#if ENABLE(WEBGL)
1714 { "DST_COLOR", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0306) } },
1715#else
1716 { 0, 0, NoIntrinsic, { 0, 0 } },
1717#endif
1718#if ENABLE(WEBGL)
1719 { "ONE_MINUS_DST_COLOR", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0307) } },
1720#else
1721 { 0, 0, NoIntrinsic, { 0, 0 } },
1722#endif
1723#if ENABLE(WEBGL)
1724 { "SRC_ALPHA_SATURATE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0308) } },
1725#else
1726 { 0, 0, NoIntrinsic, { 0, 0 } },
1727#endif
1728#if ENABLE(WEBGL)
1729 { "FUNC_ADD", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8006) } },
1730#else
1731 { 0, 0, NoIntrinsic, { 0, 0 } },
1732#endif
1733#if ENABLE(WEBGL)
1734 { "BLEND_EQUATION", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8009) } },
1735#else
1736 { 0, 0, NoIntrinsic, { 0, 0 } },
1737#endif
1738#if ENABLE(WEBGL)
1739 { "BLEND_EQUATION_RGB", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8009) } },
1740#else
1741 { 0, 0, NoIntrinsic, { 0, 0 } },
1742#endif
1743#if ENABLE(WEBGL)
1744 { "BLEND_EQUATION_ALPHA", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x883D) } },
1745#else
1746 { 0, 0, NoIntrinsic, { 0, 0 } },
1747#endif
1748#if ENABLE(WEBGL)
1749 { "FUNC_SUBTRACT", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x800A) } },
1750#else
1751 { 0, 0, NoIntrinsic, { 0, 0 } },
1752#endif
1753#if ENABLE(WEBGL)
1754 { "FUNC_REVERSE_SUBTRACT", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x800B) } },
1755#else
1756 { 0, 0, NoIntrinsic, { 0, 0 } },
1757#endif
1758#if ENABLE(WEBGL)
1759 { "BLEND_DST_RGB", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x80C8) } },
1760#else
1761 { 0, 0, NoIntrinsic, { 0, 0 } },
1762#endif
1763#if ENABLE(WEBGL)
1764 { "BLEND_SRC_RGB", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x80C9) } },
1765#else
1766 { 0, 0, NoIntrinsic, { 0, 0 } },
1767#endif
1768#if ENABLE(WEBGL)
1769 { "BLEND_DST_ALPHA", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x80CA) } },
1770#else
1771 { 0, 0, NoIntrinsic, { 0, 0 } },
1772#endif
1773#if ENABLE(WEBGL)
1774 { "BLEND_SRC_ALPHA", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x80CB) } },
1775#else
1776 { 0, 0, NoIntrinsic, { 0, 0 } },
1777#endif
1778#if ENABLE(WEBGL)
1779 { "CONSTANT_COLOR", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8001) } },
1780#else
1781 { 0, 0, NoIntrinsic, { 0, 0 } },
1782#endif
1783#if ENABLE(WEBGL)
1784 { "ONE_MINUS_CONSTANT_COLOR", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8002) } },
1785#else
1786 { 0, 0, NoIntrinsic, { 0, 0 } },
1787#endif
1788#if ENABLE(WEBGL)
1789 { "CONSTANT_ALPHA", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8003) } },
1790#else
1791 { 0, 0, NoIntrinsic, { 0, 0 } },
1792#endif
1793#if ENABLE(WEBGL)
1794 { "ONE_MINUS_CONSTANT_ALPHA", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8004) } },
1795#else
1796 { 0, 0, NoIntrinsic, { 0, 0 } },
1797#endif
1798#if ENABLE(WEBGL)
1799 { "BLEND_COLOR", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8005) } },
1800#else
1801 { 0, 0, NoIntrinsic, { 0, 0 } },
1802#endif
1803#if ENABLE(WEBGL)
1804 { "ARRAY_BUFFER", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8892) } },
1805#else
1806 { 0, 0, NoIntrinsic, { 0, 0 } },
1807#endif
1808#if ENABLE(WEBGL)
1809 { "ELEMENT_ARRAY_BUFFER", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8893) } },
1810#else
1811 { 0, 0, NoIntrinsic, { 0, 0 } },
1812#endif
1813#if ENABLE(WEBGL)
1814 { "ARRAY_BUFFER_BINDING", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8894) } },
1815#else
1816 { 0, 0, NoIntrinsic, { 0, 0 } },
1817#endif
1818#if ENABLE(WEBGL)
1819 { "ELEMENT_ARRAY_BUFFER_BINDING", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8895) } },
1820#else
1821 { 0, 0, NoIntrinsic, { 0, 0 } },
1822#endif
1823#if ENABLE(WEBGL)
1824 { "STREAM_DRAW", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x88E0) } },
1825#else
1826 { 0, 0, NoIntrinsic, { 0, 0 } },
1827#endif
1828#if ENABLE(WEBGL)
1829 { "STATIC_DRAW", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x88E4) } },
1830#else
1831 { 0, 0, NoIntrinsic, { 0, 0 } },
1832#endif
1833#if ENABLE(WEBGL)
1834 { "DYNAMIC_DRAW", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x88E8) } },
1835#else
1836 { 0, 0, NoIntrinsic, { 0, 0 } },
1837#endif
1838#if ENABLE(WEBGL)
1839 { "BUFFER_SIZE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8764) } },
1840#else
1841 { 0, 0, NoIntrinsic, { 0, 0 } },
1842#endif
1843#if ENABLE(WEBGL)
1844 { "BUFFER_USAGE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8765) } },
1845#else
1846 { 0, 0, NoIntrinsic, { 0, 0 } },
1847#endif
1848#if ENABLE(WEBGL)
1849 { "CURRENT_VERTEX_ATTRIB", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8626) } },
1850#else
1851 { 0, 0, NoIntrinsic, { 0, 0 } },
1852#endif
1853#if ENABLE(WEBGL)
1854 { "FRONT", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0404) } },
1855#else
1856 { 0, 0, NoIntrinsic, { 0, 0 } },
1857#endif
1858#if ENABLE(WEBGL)
1859 { "BACK", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0405) } },
1860#else
1861 { 0, 0, NoIntrinsic, { 0, 0 } },
1862#endif
1863#if ENABLE(WEBGL)
1864 { "FRONT_AND_BACK", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0408) } },
1865#else
1866 { 0, 0, NoIntrinsic, { 0, 0 } },
1867#endif
1868#if ENABLE(WEBGL)
1869 { "TEXTURE_2D", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0DE1) } },
1870#else
1871 { 0, 0, NoIntrinsic, { 0, 0 } },
1872#endif
1873#if ENABLE(WEBGL)
1874 { "CULL_FACE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0B44) } },
1875#else
1876 { 0, 0, NoIntrinsic, { 0, 0 } },
1877#endif
1878#if ENABLE(WEBGL)
1879 { "BLEND", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0BE2) } },
1880#else
1881 { 0, 0, NoIntrinsic, { 0, 0 } },
1882#endif
1883#if ENABLE(WEBGL)
1884 { "DITHER", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0BD0) } },
1885#else
1886 { 0, 0, NoIntrinsic, { 0, 0 } },
1887#endif
1888#if ENABLE(WEBGL)
1889 { "STENCIL_TEST", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0B90) } },
1890#else
1891 { 0, 0, NoIntrinsic, { 0, 0 } },
1892#endif
1893#if ENABLE(WEBGL)
1894 { "DEPTH_TEST", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0B71) } },
1895#else
1896 { 0, 0, NoIntrinsic, { 0, 0 } },
1897#endif
1898#if ENABLE(WEBGL)
1899 { "SCISSOR_TEST", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0C11) } },
1900#else
1901 { 0, 0, NoIntrinsic, { 0, 0 } },
1902#endif
1903#if ENABLE(WEBGL)
1904 { "POLYGON_OFFSET_FILL", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8037) } },
1905#else
1906 { 0, 0, NoIntrinsic, { 0, 0 } },
1907#endif
1908#if ENABLE(WEBGL)
1909 { "SAMPLE_ALPHA_TO_COVERAGE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x809E) } },
1910#else
1911 { 0, 0, NoIntrinsic, { 0, 0 } },
1912#endif
1913#if ENABLE(WEBGL)
1914 { "SAMPLE_COVERAGE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x80A0) } },
1915#else
1916 { 0, 0, NoIntrinsic, { 0, 0 } },
1917#endif
1918#if ENABLE(WEBGL)
1919 { "NO_ERROR", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0) } },
1920#else
1921 { 0, 0, NoIntrinsic, { 0, 0 } },
1922#endif
1923#if ENABLE(WEBGL)
1924 { "INVALID_ENUM", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0500) } },
1925#else
1926 { 0, 0, NoIntrinsic, { 0, 0 } },
1927#endif
1928#if ENABLE(WEBGL)
1929 { "INVALID_VALUE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0501) } },
1930#else
1931 { 0, 0, NoIntrinsic, { 0, 0 } },
1932#endif
1933#if ENABLE(WEBGL)
1934 { "INVALID_OPERATION", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0502) } },
1935#else
1936 { 0, 0, NoIntrinsic, { 0, 0 } },
1937#endif
1938#if ENABLE(WEBGL)
1939 { "OUT_OF_MEMORY", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0505) } },
1940#else
1941 { 0, 0, NoIntrinsic, { 0, 0 } },
1942#endif
1943#if ENABLE(WEBGL)
1944 { "CW", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0900) } },
1945#else
1946 { 0, 0, NoIntrinsic, { 0, 0 } },
1947#endif
1948#if ENABLE(WEBGL)
1949 { "CCW", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0901) } },
1950#else
1951 { 0, 0, NoIntrinsic, { 0, 0 } },
1952#endif
1953#if ENABLE(WEBGL)
1954 { "LINE_WIDTH", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0B21) } },
1955#else
1956 { 0, 0, NoIntrinsic, { 0, 0 } },
1957#endif
1958#if ENABLE(WEBGL)
1959 { "ALIASED_POINT_SIZE_RANGE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x846D) } },
1960#else
1961 { 0, 0, NoIntrinsic, { 0, 0 } },
1962#endif
1963#if ENABLE(WEBGL)
1964 { "ALIASED_LINE_WIDTH_RANGE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x846E) } },
1965#else
1966 { 0, 0, NoIntrinsic, { 0, 0 } },
1967#endif
1968#if ENABLE(WEBGL)
1969 { "CULL_FACE_MODE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0B45) } },
1970#else
1971 { 0, 0, NoIntrinsic, { 0, 0 } },
1972#endif
1973#if ENABLE(WEBGL)
1974 { "FRONT_FACE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0B46) } },
1975#else
1976 { 0, 0, NoIntrinsic, { 0, 0 } },
1977#endif
1978#if ENABLE(WEBGL)
1979 { "DEPTH_RANGE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0B70) } },
1980#else
1981 { 0, 0, NoIntrinsic, { 0, 0 } },
1982#endif
1983#if ENABLE(WEBGL)
1984 { "DEPTH_WRITEMASK", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0B72) } },
1985#else
1986 { 0, 0, NoIntrinsic, { 0, 0 } },
1987#endif
1988#if ENABLE(WEBGL)
1989 { "DEPTH_CLEAR_VALUE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0B73) } },
1990#else
1991 { 0, 0, NoIntrinsic, { 0, 0 } },
1992#endif
1993#if ENABLE(WEBGL)
1994 { "DEPTH_FUNC", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0B74) } },
1995#else
1996 { 0, 0, NoIntrinsic, { 0, 0 } },
1997#endif
1998#if ENABLE(WEBGL)
1999 { "STENCIL_CLEAR_VALUE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0B91) } },
2000#else
2001 { 0, 0, NoIntrinsic, { 0, 0 } },
2002#endif
2003#if ENABLE(WEBGL)
2004 { "STENCIL_FUNC", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0B92) } },
2005#else
2006 { 0, 0, NoIntrinsic, { 0, 0 } },
2007#endif
2008#if ENABLE(WEBGL)
2009 { "STENCIL_FAIL", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0B94) } },
2010#else
2011 { 0, 0, NoIntrinsic, { 0, 0 } },
2012#endif
2013#if ENABLE(WEBGL)
2014 { "STENCIL_PASS_DEPTH_FAIL", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0B95) } },
2015#else
2016 { 0, 0, NoIntrinsic, { 0, 0 } },
2017#endif
2018#if ENABLE(WEBGL)
2019 { "STENCIL_PASS_DEPTH_PASS", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0B96) } },
2020#else
2021 { 0, 0, NoIntrinsic, { 0, 0 } },
2022#endif
2023#if ENABLE(WEBGL)
2024 { "STENCIL_REF", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0B97) } },
2025#else
2026 { 0, 0, NoIntrinsic, { 0, 0 } },
2027#endif
2028#if ENABLE(WEBGL)
2029 { "STENCIL_VALUE_MASK", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0B93) } },
2030#else
2031 { 0, 0, NoIntrinsic, { 0, 0 } },
2032#endif
2033#if ENABLE(WEBGL)
2034 { "STENCIL_WRITEMASK", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0B98) } },
2035#else
2036 { 0, 0, NoIntrinsic, { 0, 0 } },
2037#endif
2038#if ENABLE(WEBGL)
2039 { "STENCIL_BACK_FUNC", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8800) } },
2040#else
2041 { 0, 0, NoIntrinsic, { 0, 0 } },
2042#endif
2043#if ENABLE(WEBGL)
2044 { "STENCIL_BACK_FAIL", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8801) } },
2045#else
2046 { 0, 0, NoIntrinsic, { 0, 0 } },
2047#endif
2048#if ENABLE(WEBGL)
2049 { "STENCIL_BACK_PASS_DEPTH_FAIL", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8802) } },
2050#else
2051 { 0, 0, NoIntrinsic, { 0, 0 } },
2052#endif
2053#if ENABLE(WEBGL)
2054 { "STENCIL_BACK_PASS_DEPTH_PASS", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8803) } },
2055#else
2056 { 0, 0, NoIntrinsic, { 0, 0 } },
2057#endif
2058#if ENABLE(WEBGL)
2059 { "STENCIL_BACK_REF", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8CA3) } },
2060#else
2061 { 0, 0, NoIntrinsic, { 0, 0 } },
2062#endif
2063#if ENABLE(WEBGL)
2064 { "STENCIL_BACK_VALUE_MASK", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8CA4) } },
2065#else
2066 { 0, 0, NoIntrinsic, { 0, 0 } },
2067#endif
2068#if ENABLE(WEBGL)
2069 { "STENCIL_BACK_WRITEMASK", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8CA5) } },
2070#else
2071 { 0, 0, NoIntrinsic, { 0, 0 } },
2072#endif
2073#if ENABLE(WEBGL)
2074 { "VIEWPORT", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0BA2) } },
2075#else
2076 { 0, 0, NoIntrinsic, { 0, 0 } },
2077#endif
2078#if ENABLE(WEBGL)
2079 { "SCISSOR_BOX", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0C10) } },
2080#else
2081 { 0, 0, NoIntrinsic, { 0, 0 } },
2082#endif
2083#if ENABLE(WEBGL)
2084 { "COLOR_CLEAR_VALUE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0C22) } },
2085#else
2086 { 0, 0, NoIntrinsic, { 0, 0 } },
2087#endif
2088#if ENABLE(WEBGL)
2089 { "COLOR_WRITEMASK", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0C23) } },
2090#else
2091 { 0, 0, NoIntrinsic, { 0, 0 } },
2092#endif
2093#if ENABLE(WEBGL)
2094 { "UNPACK_ALIGNMENT", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0CF5) } },
2095#else
2096 { 0, 0, NoIntrinsic, { 0, 0 } },
2097#endif
2098#if ENABLE(WEBGL)
2099 { "PACK_ALIGNMENT", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0D05) } },
2100#else
2101 { 0, 0, NoIntrinsic, { 0, 0 } },
2102#endif
2103#if ENABLE(WEBGL)
2104 { "MAX_TEXTURE_SIZE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0D33) } },
2105#else
2106 { 0, 0, NoIntrinsic, { 0, 0 } },
2107#endif
2108#if ENABLE(WEBGL)
2109 { "MAX_VIEWPORT_DIMS", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0D3A) } },
2110#else
2111 { 0, 0, NoIntrinsic, { 0, 0 } },
2112#endif
2113#if ENABLE(WEBGL)
2114 { "SUBPIXEL_BITS", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0D50) } },
2115#else
2116 { 0, 0, NoIntrinsic, { 0, 0 } },
2117#endif
2118#if ENABLE(WEBGL)
2119 { "RED_BITS", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0D52) } },
2120#else
2121 { 0, 0, NoIntrinsic, { 0, 0 } },
2122#endif
2123#if ENABLE(WEBGL)
2124 { "GREEN_BITS", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0D53) } },
2125#else
2126 { 0, 0, NoIntrinsic, { 0, 0 } },
2127#endif
2128#if ENABLE(WEBGL)
2129 { "BLUE_BITS", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0D54) } },
2130#else
2131 { 0, 0, NoIntrinsic, { 0, 0 } },
2132#endif
2133#if ENABLE(WEBGL)
2134 { "ALPHA_BITS", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0D55) } },
2135#else
2136 { 0, 0, NoIntrinsic, { 0, 0 } },
2137#endif
2138#if ENABLE(WEBGL)
2139 { "DEPTH_BITS", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0D56) } },
2140#else
2141 { 0, 0, NoIntrinsic, { 0, 0 } },
2142#endif
2143#if ENABLE(WEBGL)
2144 { "STENCIL_BITS", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0D57) } },
2145#else
2146 { 0, 0, NoIntrinsic, { 0, 0 } },
2147#endif
2148#if ENABLE(WEBGL)
2149 { "POLYGON_OFFSET_UNITS", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x2A00) } },
2150#else
2151 { 0, 0, NoIntrinsic, { 0, 0 } },
2152#endif
2153#if ENABLE(WEBGL)
2154 { "POLYGON_OFFSET_FACTOR", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8038) } },
2155#else
2156 { 0, 0, NoIntrinsic, { 0, 0 } },
2157#endif
2158#if ENABLE(WEBGL)
2159 { "TEXTURE_BINDING_2D", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8069) } },
2160#else
2161 { 0, 0, NoIntrinsic, { 0, 0 } },
2162#endif
2163#if ENABLE(WEBGL)
2164 { "SAMPLE_BUFFERS", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x80A8) } },
2165#else
2166 { 0, 0, NoIntrinsic, { 0, 0 } },
2167#endif
2168#if ENABLE(WEBGL)
2169 { "SAMPLES", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x80A9) } },
2170#else
2171 { 0, 0, NoIntrinsic, { 0, 0 } },
2172#endif
2173#if ENABLE(WEBGL)
2174 { "SAMPLE_COVERAGE_VALUE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x80AA) } },
2175#else
2176 { 0, 0, NoIntrinsic, { 0, 0 } },
2177#endif
2178#if ENABLE(WEBGL)
2179 { "SAMPLE_COVERAGE_INVERT", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x80AB) } },
2180#else
2181 { 0, 0, NoIntrinsic, { 0, 0 } },
2182#endif
2183#if ENABLE(WEBGL)
2184 { "COMPRESSED_TEXTURE_FORMATS", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x86A3) } },
2185#else
2186 { 0, 0, NoIntrinsic, { 0, 0 } },
2187#endif
2188#if ENABLE(WEBGL)
2189 { "DONT_CARE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x1100) } },
2190#else
2191 { 0, 0, NoIntrinsic, { 0, 0 } },
2192#endif
2193#if ENABLE(WEBGL)
2194 { "FASTEST", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x1101) } },
2195#else
2196 { 0, 0, NoIntrinsic, { 0, 0 } },
2197#endif
2198#if ENABLE(WEBGL)
2199 { "NICEST", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x1102) } },
2200#else
2201 { 0, 0, NoIntrinsic, { 0, 0 } },
2202#endif
2203#if ENABLE(WEBGL)
2204 { "GENERATE_MIPMAP_HINT", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8192) } },
2205#else
2206 { 0, 0, NoIntrinsic, { 0, 0 } },
2207#endif
2208#if ENABLE(WEBGL)
2209 { "BYTE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x1400) } },
2210#else
2211 { 0, 0, NoIntrinsic, { 0, 0 } },
2212#endif
2213#if ENABLE(WEBGL)
2214 { "UNSIGNED_BYTE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x1401) } },
2215#else
2216 { 0, 0, NoIntrinsic, { 0, 0 } },
2217#endif
2218#if ENABLE(WEBGL)
2219 { "SHORT", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x1402) } },
2220#else
2221 { 0, 0, NoIntrinsic, { 0, 0 } },
2222#endif
2223#if ENABLE(WEBGL)
2224 { "UNSIGNED_SHORT", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x1403) } },
2225#else
2226 { 0, 0, NoIntrinsic, { 0, 0 } },
2227#endif
2228#if ENABLE(WEBGL)
2229 { "INT", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x1404) } },
2230#else
2231 { 0, 0, NoIntrinsic, { 0, 0 } },
2232#endif
2233#if ENABLE(WEBGL)
2234 { "UNSIGNED_INT", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x1405) } },
2235#else
2236 { 0, 0, NoIntrinsic, { 0, 0 } },
2237#endif
2238#if ENABLE(WEBGL)
2239 { "FLOAT", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x1406) } },
2240#else
2241 { 0, 0, NoIntrinsic, { 0, 0 } },
2242#endif
2243#if ENABLE(WEBGL)
2244 { "DEPTH_COMPONENT", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x1902) } },
2245#else
2246 { 0, 0, NoIntrinsic, { 0, 0 } },
2247#endif
2248#if ENABLE(WEBGL)
2249 { "ALPHA", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x1906) } },
2250#else
2251 { 0, 0, NoIntrinsic, { 0, 0 } },
2252#endif
2253#if ENABLE(WEBGL)
2254 { "RGB", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x1907) } },
2255#else
2256 { 0, 0, NoIntrinsic, { 0, 0 } },
2257#endif
2258#if ENABLE(WEBGL)
2259 { "RGBA", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x1908) } },
2260#else
2261 { 0, 0, NoIntrinsic, { 0, 0 } },
2262#endif
2263#if ENABLE(WEBGL)
2264 { "LUMINANCE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x1909) } },
2265#else
2266 { 0, 0, NoIntrinsic, { 0, 0 } },
2267#endif
2268#if ENABLE(WEBGL)
2269 { "LUMINANCE_ALPHA", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x190A) } },
2270#else
2271 { 0, 0, NoIntrinsic, { 0, 0 } },
2272#endif
2273#if ENABLE(WEBGL)
2274 { "UNSIGNED_SHORT_4_4_4_4", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8033) } },
2275#else
2276 { 0, 0, NoIntrinsic, { 0, 0 } },
2277#endif
2278#if ENABLE(WEBGL)
2279 { "UNSIGNED_SHORT_5_5_5_1", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8034) } },
2280#else
2281 { 0, 0, NoIntrinsic, { 0, 0 } },
2282#endif
2283#if ENABLE(WEBGL)
2284 { "UNSIGNED_SHORT_5_6_5", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8363) } },
2285#else
2286 { 0, 0, NoIntrinsic, { 0, 0 } },
2287#endif
2288#if ENABLE(WEBGL)
2289 { "FRAGMENT_SHADER", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8B30) } },
2290#else
2291 { 0, 0, NoIntrinsic, { 0, 0 } },
2292#endif
2293#if ENABLE(WEBGL)
2294 { "VERTEX_SHADER", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8B31) } },
2295#else
2296 { 0, 0, NoIntrinsic, { 0, 0 } },
2297#endif
2298#if ENABLE(WEBGL)
2299 { "MAX_VERTEX_ATTRIBS", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8869) } },
2300#else
2301 { 0, 0, NoIntrinsic, { 0, 0 } },
2302#endif
2303#if ENABLE(WEBGL)
2304 { "MAX_VERTEX_UNIFORM_VECTORS", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8DFB) } },
2305#else
2306 { 0, 0, NoIntrinsic, { 0, 0 } },
2307#endif
2308#if ENABLE(WEBGL)
2309 { "MAX_VARYING_VECTORS", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8DFC) } },
2310#else
2311 { 0, 0, NoIntrinsic, { 0, 0 } },
2312#endif
2313#if ENABLE(WEBGL)
2314 { "MAX_COMBINED_TEXTURE_IMAGE_UNITS", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8B4D) } },
2315#else
2316 { 0, 0, NoIntrinsic, { 0, 0 } },
2317#endif
2318#if ENABLE(WEBGL)
2319 { "MAX_VERTEX_TEXTURE_IMAGE_UNITS", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8B4C) } },
2320#else
2321 { 0, 0, NoIntrinsic, { 0, 0 } },
2322#endif
2323#if ENABLE(WEBGL)
2324 { "MAX_TEXTURE_IMAGE_UNITS", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8872) } },
2325#else
2326 { 0, 0, NoIntrinsic, { 0, 0 } },
2327#endif
2328#if ENABLE(WEBGL)
2329 { "MAX_FRAGMENT_UNIFORM_VECTORS", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8DFD) } },
2330#else
2331 { 0, 0, NoIntrinsic, { 0, 0 } },
2332#endif
2333#if ENABLE(WEBGL)
2334 { "SHADER_TYPE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8B4F) } },
2335#else
2336 { 0, 0, NoIntrinsic, { 0, 0 } },
2337#endif
2338#if ENABLE(WEBGL)
2339 { "DELETE_STATUS", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8B80) } },
2340#else
2341 { 0, 0, NoIntrinsic, { 0, 0 } },
2342#endif
2343#if ENABLE(WEBGL)
2344 { "LINK_STATUS", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8B82) } },
2345#else
2346 { 0, 0, NoIntrinsic, { 0, 0 } },
2347#endif
2348#if ENABLE(WEBGL)
2349 { "VALIDATE_STATUS", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8B83) } },
2350#else
2351 { 0, 0, NoIntrinsic, { 0, 0 } },
2352#endif
2353#if ENABLE(WEBGL)
2354 { "ATTACHED_SHADERS", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8B85) } },
2355#else
2356 { 0, 0, NoIntrinsic, { 0, 0 } },
2357#endif
2358#if ENABLE(WEBGL)
2359 { "ACTIVE_UNIFORMS", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8B86) } },
2360#else
2361 { 0, 0, NoIntrinsic, { 0, 0 } },
2362#endif
2363#if ENABLE(WEBGL)
2364 { "ACTIVE_ATTRIBUTES", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8B89) } },
2365#else
2366 { 0, 0, NoIntrinsic, { 0, 0 } },
2367#endif
2368#if ENABLE(WEBGL)
2369 { "SHADING_LANGUAGE_VERSION", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8B8C) } },
2370#else
2371 { 0, 0, NoIntrinsic, { 0, 0 } },
2372#endif
2373#if ENABLE(WEBGL)
2374 { "CURRENT_PROGRAM", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8B8D) } },
2375#else
2376 { 0, 0, NoIntrinsic, { 0, 0 } },
2377#endif
2378#if ENABLE(WEBGL)
2379 { "NEVER", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0200) } },
2380#else
2381 { 0, 0, NoIntrinsic, { 0, 0 } },
2382#endif
2383#if ENABLE(WEBGL)
2384 { "LESS", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0201) } },
2385#else
2386 { 0, 0, NoIntrinsic, { 0, 0 } },
2387#endif
2388#if ENABLE(WEBGL)
2389 { "EQUAL", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0202) } },
2390#else
2391 { 0, 0, NoIntrinsic, { 0, 0 } },
2392#endif
2393#if ENABLE(WEBGL)
2394 { "LEQUAL", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0203) } },
2395#else
2396 { 0, 0, NoIntrinsic, { 0, 0 } },
2397#endif
2398#if ENABLE(WEBGL)
2399 { "GREATER", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0204) } },
2400#else
2401 { 0, 0, NoIntrinsic, { 0, 0 } },
2402#endif
2403#if ENABLE(WEBGL)
2404 { "NOTEQUAL", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0205) } },
2405#else
2406 { 0, 0, NoIntrinsic, { 0, 0 } },
2407#endif
2408#if ENABLE(WEBGL)
2409 { "GEQUAL", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0206) } },
2410#else
2411 { 0, 0, NoIntrinsic, { 0, 0 } },
2412#endif
2413#if ENABLE(WEBGL)
2414 { "ALWAYS", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0207) } },
2415#else
2416 { 0, 0, NoIntrinsic, { 0, 0 } },
2417#endif
2418#if ENABLE(WEBGL)
2419 { "KEEP", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x1E00) } },
2420#else
2421 { 0, 0, NoIntrinsic, { 0, 0 } },
2422#endif
2423#if ENABLE(WEBGL)
2424 { "REPLACE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x1E01) } },
2425#else
2426 { 0, 0, NoIntrinsic, { 0, 0 } },
2427#endif
2428#if ENABLE(WEBGL)
2429 { "INCR", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x1E02) } },
2430#else
2431 { 0, 0, NoIntrinsic, { 0, 0 } },
2432#endif
2433#if ENABLE(WEBGL)
2434 { "DECR", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x1E03) } },
2435#else
2436 { 0, 0, NoIntrinsic, { 0, 0 } },
2437#endif
2438#if ENABLE(WEBGL)
2439 { "INVERT", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x150A) } },
2440#else
2441 { 0, 0, NoIntrinsic, { 0, 0 } },
2442#endif
2443#if ENABLE(WEBGL)
2444 { "INCR_WRAP", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8507) } },
2445#else
2446 { 0, 0, NoIntrinsic, { 0, 0 } },
2447#endif
2448#if ENABLE(WEBGL)
2449 { "DECR_WRAP", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8508) } },
2450#else
2451 { 0, 0, NoIntrinsic, { 0, 0 } },
2452#endif
2453#if ENABLE(WEBGL)
2454 { "VENDOR", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x1F00) } },
2455#else
2456 { 0, 0, NoIntrinsic, { 0, 0 } },
2457#endif
2458#if ENABLE(WEBGL)
2459 { "RENDERER", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x1F01) } },
2460#else
2461 { 0, 0, NoIntrinsic, { 0, 0 } },
2462#endif
2463#if ENABLE(WEBGL)
2464 { "VERSION", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x1F02) } },
2465#else
2466 { 0, 0, NoIntrinsic, { 0, 0 } },
2467#endif
2468#if ENABLE(WEBGL)
2469 { "NEAREST", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x2600) } },
2470#else
2471 { 0, 0, NoIntrinsic, { 0, 0 } },
2472#endif
2473#if ENABLE(WEBGL)
2474 { "LINEAR", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x2601) } },
2475#else
2476 { 0, 0, NoIntrinsic, { 0, 0 } },
2477#endif
2478#if ENABLE(WEBGL)
2479 { "NEAREST_MIPMAP_NEAREST", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x2700) } },
2480#else
2481 { 0, 0, NoIntrinsic, { 0, 0 } },
2482#endif
2483#if ENABLE(WEBGL)
2484 { "LINEAR_MIPMAP_NEAREST", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x2701) } },
2485#else
2486 { 0, 0, NoIntrinsic, { 0, 0 } },
2487#endif
2488#if ENABLE(WEBGL)
2489 { "NEAREST_MIPMAP_LINEAR", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x2702) } },
2490#else
2491 { 0, 0, NoIntrinsic, { 0, 0 } },
2492#endif
2493#if ENABLE(WEBGL)
2494 { "LINEAR_MIPMAP_LINEAR", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x2703) } },
2495#else
2496 { 0, 0, NoIntrinsic, { 0, 0 } },
2497#endif
2498#if ENABLE(WEBGL)
2499 { "TEXTURE_MAG_FILTER", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x2800) } },
2500#else
2501 { 0, 0, NoIntrinsic, { 0, 0 } },
2502#endif
2503#if ENABLE(WEBGL)
2504 { "TEXTURE_MIN_FILTER", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x2801) } },
2505#else
2506 { 0, 0, NoIntrinsic, { 0, 0 } },
2507#endif
2508#if ENABLE(WEBGL)
2509 { "TEXTURE_WRAP_S", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x2802) } },
2510#else
2511 { 0, 0, NoIntrinsic, { 0, 0 } },
2512#endif
2513#if ENABLE(WEBGL)
2514 { "TEXTURE_WRAP_T", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x2803) } },
2515#else
2516 { 0, 0, NoIntrinsic, { 0, 0 } },
2517#endif
2518#if ENABLE(WEBGL)
2519 { "TEXTURE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x1702) } },
2520#else
2521 { 0, 0, NoIntrinsic, { 0, 0 } },
2522#endif
2523#if ENABLE(WEBGL)
2524 { "TEXTURE_CUBE_MAP", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8513) } },
2525#else
2526 { 0, 0, NoIntrinsic, { 0, 0 } },
2527#endif
2528#if ENABLE(WEBGL)
2529 { "TEXTURE_BINDING_CUBE_MAP", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8514) } },
2530#else
2531 { 0, 0, NoIntrinsic, { 0, 0 } },
2532#endif
2533#if ENABLE(WEBGL)
2534 { "TEXTURE_CUBE_MAP_POSITIVE_X", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8515) } },
2535#else
2536 { 0, 0, NoIntrinsic, { 0, 0 } },
2537#endif
2538#if ENABLE(WEBGL)
2539 { "TEXTURE_CUBE_MAP_NEGATIVE_X", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8516) } },
2540#else
2541 { 0, 0, NoIntrinsic, { 0, 0 } },
2542#endif
2543#if ENABLE(WEBGL)
2544 { "TEXTURE_CUBE_MAP_POSITIVE_Y", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8517) } },
2545#else
2546 { 0, 0, NoIntrinsic, { 0, 0 } },
2547#endif
2548#if ENABLE(WEBGL)
2549 { "TEXTURE_CUBE_MAP_NEGATIVE_Y", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8518) } },
2550#else
2551 { 0, 0, NoIntrinsic, { 0, 0 } },
2552#endif
2553#if ENABLE(WEBGL)
2554 { "TEXTURE_CUBE_MAP_POSITIVE_Z", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8519) } },
2555#else
2556 { 0, 0, NoIntrinsic, { 0, 0 } },
2557#endif
2558#if ENABLE(WEBGL)
2559 { "TEXTURE_CUBE_MAP_NEGATIVE_Z", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x851A) } },
2560#else
2561 { 0, 0, NoIntrinsic, { 0, 0 } },
2562#endif
2563#if ENABLE(WEBGL)
2564 { "MAX_CUBE_MAP_TEXTURE_SIZE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x851C) } },
2565#else
2566 { 0, 0, NoIntrinsic, { 0, 0 } },
2567#endif
2568#if ENABLE(WEBGL)
2569 { "TEXTURE0", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x84C0) } },
2570#else
2571 { 0, 0, NoIntrinsic, { 0, 0 } },
2572#endif
2573#if ENABLE(WEBGL)
2574 { "TEXTURE1", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x84C1) } },
2575#else
2576 { 0, 0, NoIntrinsic, { 0, 0 } },
2577#endif
2578#if ENABLE(WEBGL)
2579 { "TEXTURE2", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x84C2) } },
2580#else
2581 { 0, 0, NoIntrinsic, { 0, 0 } },
2582#endif
2583#if ENABLE(WEBGL)
2584 { "TEXTURE3", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x84C3) } },
2585#else
2586 { 0, 0, NoIntrinsic, { 0, 0 } },
2587#endif
2588#if ENABLE(WEBGL)
2589 { "TEXTURE4", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x84C4) } },
2590#else
2591 { 0, 0, NoIntrinsic, { 0, 0 } },
2592#endif
2593#if ENABLE(WEBGL)
2594 { "TEXTURE5", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x84C5) } },
2595#else
2596 { 0, 0, NoIntrinsic, { 0, 0 } },
2597#endif
2598#if ENABLE(WEBGL)
2599 { "TEXTURE6", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x84C6) } },
2600#else
2601 { 0, 0, NoIntrinsic, { 0, 0 } },
2602#endif
2603#if ENABLE(WEBGL)
2604 { "TEXTURE7", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x84C7) } },
2605#else
2606 { 0, 0, NoIntrinsic, { 0, 0 } },
2607#endif
2608#if ENABLE(WEBGL)
2609 { "TEXTURE8", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x84C8) } },
2610#else
2611 { 0, 0, NoIntrinsic, { 0, 0 } },
2612#endif
2613#if ENABLE(WEBGL)
2614 { "TEXTURE9", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x84C9) } },
2615#else
2616 { 0, 0, NoIntrinsic, { 0, 0 } },
2617#endif
2618#if ENABLE(WEBGL)
2619 { "TEXTURE10", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x84CA) } },
2620#else
2621 { 0, 0, NoIntrinsic, { 0, 0 } },
2622#endif
2623#if ENABLE(WEBGL)
2624 { "TEXTURE11", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x84CB) } },
2625#else
2626 { 0, 0, NoIntrinsic, { 0, 0 } },
2627#endif
2628#if ENABLE(WEBGL)
2629 { "TEXTURE12", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x84CC) } },
2630#else
2631 { 0, 0, NoIntrinsic, { 0, 0 } },
2632#endif
2633#if ENABLE(WEBGL)
2634 { "TEXTURE13", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x84CD) } },
2635#else
2636 { 0, 0, NoIntrinsic, { 0, 0 } },
2637#endif
2638#if ENABLE(WEBGL)
2639 { "TEXTURE14", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x84CE) } },
2640#else
2641 { 0, 0, NoIntrinsic, { 0, 0 } },
2642#endif
2643#if ENABLE(WEBGL)
2644 { "TEXTURE15", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x84CF) } },
2645#else
2646 { 0, 0, NoIntrinsic, { 0, 0 } },
2647#endif
2648#if ENABLE(WEBGL)
2649 { "TEXTURE16", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x84D0) } },
2650#else
2651 { 0, 0, NoIntrinsic, { 0, 0 } },
2652#endif
2653#if ENABLE(WEBGL)
2654 { "TEXTURE17", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x84D1) } },
2655#else
2656 { 0, 0, NoIntrinsic, { 0, 0 } },
2657#endif
2658#if ENABLE(WEBGL)
2659 { "TEXTURE18", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x84D2) } },
2660#else
2661 { 0, 0, NoIntrinsic, { 0, 0 } },
2662#endif
2663#if ENABLE(WEBGL)
2664 { "TEXTURE19", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x84D3) } },
2665#else
2666 { 0, 0, NoIntrinsic, { 0, 0 } },
2667#endif
2668#if ENABLE(WEBGL)
2669 { "TEXTURE20", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x84D4) } },
2670#else
2671 { 0, 0, NoIntrinsic, { 0, 0 } },
2672#endif
2673#if ENABLE(WEBGL)
2674 { "TEXTURE21", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x84D5) } },
2675#else
2676 { 0, 0, NoIntrinsic, { 0, 0 } },
2677#endif
2678#if ENABLE(WEBGL)
2679 { "TEXTURE22", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x84D6) } },
2680#else
2681 { 0, 0, NoIntrinsic, { 0, 0 } },
2682#endif
2683#if ENABLE(WEBGL)
2684 { "TEXTURE23", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x84D7) } },
2685#else
2686 { 0, 0, NoIntrinsic, { 0, 0 } },
2687#endif
2688#if ENABLE(WEBGL)
2689 { "TEXTURE24", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x84D8) } },
2690#else
2691 { 0, 0, NoIntrinsic, { 0, 0 } },
2692#endif
2693#if ENABLE(WEBGL)
2694 { "TEXTURE25", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x84D9) } },
2695#else
2696 { 0, 0, NoIntrinsic, { 0, 0 } },
2697#endif
2698#if ENABLE(WEBGL)
2699 { "TEXTURE26", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x84DA) } },
2700#else
2701 { 0, 0, NoIntrinsic, { 0, 0 } },
2702#endif
2703#if ENABLE(WEBGL)
2704 { "TEXTURE27", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x84DB) } },
2705#else
2706 { 0, 0, NoIntrinsic, { 0, 0 } },
2707#endif
2708#if ENABLE(WEBGL)
2709 { "TEXTURE28", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x84DC) } },
2710#else
2711 { 0, 0, NoIntrinsic, { 0, 0 } },
2712#endif
2713#if ENABLE(WEBGL)
2714 { "TEXTURE29", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x84DD) } },
2715#else
2716 { 0, 0, NoIntrinsic, { 0, 0 } },
2717#endif
2718#if ENABLE(WEBGL)
2719 { "TEXTURE30", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x84DE) } },
2720#else
2721 { 0, 0, NoIntrinsic, { 0, 0 } },
2722#endif
2723#if ENABLE(WEBGL)
2724 { "TEXTURE31", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x84DF) } },
2725#else
2726 { 0, 0, NoIntrinsic, { 0, 0 } },
2727#endif
2728#if ENABLE(WEBGL)
2729 { "ACTIVE_TEXTURE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x84E0) } },
2730#else
2731 { 0, 0, NoIntrinsic, { 0, 0 } },
2732#endif
2733#if ENABLE(WEBGL)
2734 { "REPEAT", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x2901) } },
2735#else
2736 { 0, 0, NoIntrinsic, { 0, 0 } },
2737#endif
2738#if ENABLE(WEBGL)
2739 { "CLAMP_TO_EDGE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x812F) } },
2740#else
2741 { 0, 0, NoIntrinsic, { 0, 0 } },
2742#endif
2743#if ENABLE(WEBGL)
2744 { "MIRRORED_REPEAT", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8370) } },
2745#else
2746 { 0, 0, NoIntrinsic, { 0, 0 } },
2747#endif
2748#if ENABLE(WEBGL)
2749 { "FLOAT_VEC2", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8B50) } },
2750#else
2751 { 0, 0, NoIntrinsic, { 0, 0 } },
2752#endif
2753#if ENABLE(WEBGL)
2754 { "FLOAT_VEC3", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8B51) } },
2755#else
2756 { 0, 0, NoIntrinsic, { 0, 0 } },
2757#endif
2758#if ENABLE(WEBGL)
2759 { "FLOAT_VEC4", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8B52) } },
2760#else
2761 { 0, 0, NoIntrinsic, { 0, 0 } },
2762#endif
2763#if ENABLE(WEBGL)
2764 { "INT_VEC2", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8B53) } },
2765#else
2766 { 0, 0, NoIntrinsic, { 0, 0 } },
2767#endif
2768#if ENABLE(WEBGL)
2769 { "INT_VEC3", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8B54) } },
2770#else
2771 { 0, 0, NoIntrinsic, { 0, 0 } },
2772#endif
2773#if ENABLE(WEBGL)
2774 { "INT_VEC4", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8B55) } },
2775#else
2776 { 0, 0, NoIntrinsic, { 0, 0 } },
2777#endif
2778#if ENABLE(WEBGL)
2779 { "BOOL", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8B56) } },
2780#else
2781 { 0, 0, NoIntrinsic, { 0, 0 } },
2782#endif
2783#if ENABLE(WEBGL)
2784 { "BOOL_VEC2", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8B57) } },
2785#else
2786 { 0, 0, NoIntrinsic, { 0, 0 } },
2787#endif
2788#if ENABLE(WEBGL)
2789 { "BOOL_VEC3", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8B58) } },
2790#else
2791 { 0, 0, NoIntrinsic, { 0, 0 } },
2792#endif
2793#if ENABLE(WEBGL)
2794 { "BOOL_VEC4", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8B59) } },
2795#else
2796 { 0, 0, NoIntrinsic, { 0, 0 } },
2797#endif
2798#if ENABLE(WEBGL)
2799 { "FLOAT_MAT2", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8B5A) } },
2800#else
2801 { 0, 0, NoIntrinsic, { 0, 0 } },
2802#endif
2803#if ENABLE(WEBGL)
2804 { "FLOAT_MAT3", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8B5B) } },
2805#else
2806 { 0, 0, NoIntrinsic, { 0, 0 } },
2807#endif
2808#if ENABLE(WEBGL)
2809 { "FLOAT_MAT4", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8B5C) } },
2810#else
2811 { 0, 0, NoIntrinsic, { 0, 0 } },
2812#endif
2813#if ENABLE(WEBGL)
2814 { "SAMPLER_2D", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8B5E) } },
2815#else
2816 { 0, 0, NoIntrinsic, { 0, 0 } },
2817#endif
2818#if ENABLE(WEBGL)
2819 { "SAMPLER_CUBE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8B60) } },
2820#else
2821 { 0, 0, NoIntrinsic, { 0, 0 } },
2822#endif
2823#if ENABLE(WEBGL)
2824 { "VERTEX_ATTRIB_ARRAY_ENABLED", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8622) } },
2825#else
2826 { 0, 0, NoIntrinsic, { 0, 0 } },
2827#endif
2828#if ENABLE(WEBGL)
2829 { "VERTEX_ATTRIB_ARRAY_SIZE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8623) } },
2830#else
2831 { 0, 0, NoIntrinsic, { 0, 0 } },
2832#endif
2833#if ENABLE(WEBGL)
2834 { "VERTEX_ATTRIB_ARRAY_STRIDE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8624) } },
2835#else
2836 { 0, 0, NoIntrinsic, { 0, 0 } },
2837#endif
2838#if ENABLE(WEBGL)
2839 { "VERTEX_ATTRIB_ARRAY_TYPE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8625) } },
2840#else
2841 { 0, 0, NoIntrinsic, { 0, 0 } },
2842#endif
2843#if ENABLE(WEBGL)
2844 { "VERTEX_ATTRIB_ARRAY_NORMALIZED", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x886A) } },
2845#else
2846 { 0, 0, NoIntrinsic, { 0, 0 } },
2847#endif
2848#if ENABLE(WEBGL)
2849 { "VERTEX_ATTRIB_ARRAY_POINTER", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8645) } },
2850#else
2851 { 0, 0, NoIntrinsic, { 0, 0 } },
2852#endif
2853#if ENABLE(WEBGL)
2854 { "VERTEX_ATTRIB_ARRAY_BUFFER_BINDING", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x889F) } },
2855#else
2856 { 0, 0, NoIntrinsic, { 0, 0 } },
2857#endif
2858#if ENABLE(WEBGL)
2859 { "IMPLEMENTATION_COLOR_READ_TYPE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8B9A) } },
2860#else
2861 { 0, 0, NoIntrinsic, { 0, 0 } },
2862#endif
2863#if ENABLE(WEBGL)
2864 { "IMPLEMENTATION_COLOR_READ_FORMAT", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8B9B) } },
2865#else
2866 { 0, 0, NoIntrinsic, { 0, 0 } },
2867#endif
2868#if ENABLE(WEBGL)
2869 { "COMPILE_STATUS", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8B81) } },
2870#else
2871 { 0, 0, NoIntrinsic, { 0, 0 } },
2872#endif
2873#if ENABLE(WEBGL)
2874 { "LOW_FLOAT", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8DF0) } },
2875#else
2876 { 0, 0, NoIntrinsic, { 0, 0 } },
2877#endif
2878#if ENABLE(WEBGL)
2879 { "MEDIUM_FLOAT", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8DF1) } },
2880#else
2881 { 0, 0, NoIntrinsic, { 0, 0 } },
2882#endif
2883#if ENABLE(WEBGL)
2884 { "HIGH_FLOAT", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8DF2) } },
2885#else
2886 { 0, 0, NoIntrinsic, { 0, 0 } },
2887#endif
2888#if ENABLE(WEBGL)
2889 { "LOW_INT", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8DF3) } },
2890#else
2891 { 0, 0, NoIntrinsic, { 0, 0 } },
2892#endif
2893#if ENABLE(WEBGL)
2894 { "MEDIUM_INT", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8DF4) } },
2895#else
2896 { 0, 0, NoIntrinsic, { 0, 0 } },
2897#endif
2898#if ENABLE(WEBGL)
2899 { "HIGH_INT", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8DF5) } },
2900#else
2901 { 0, 0, NoIntrinsic, { 0, 0 } },
2902#endif
2903#if ENABLE(WEBGL)
2904 { "FRAMEBUFFER", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8D40) } },
2905#else
2906 { 0, 0, NoIntrinsic, { 0, 0 } },
2907#endif
2908#if ENABLE(WEBGL)
2909 { "RENDERBUFFER", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8D41) } },
2910#else
2911 { 0, 0, NoIntrinsic, { 0, 0 } },
2912#endif
2913#if ENABLE(WEBGL)
2914 { "RGBA4", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8056) } },
2915#else
2916 { 0, 0, NoIntrinsic, { 0, 0 } },
2917#endif
2918#if ENABLE(WEBGL)
2919 { "RGB5_A1", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8057) } },
2920#else
2921 { 0, 0, NoIntrinsic, { 0, 0 } },
2922#endif
2923#if ENABLE(WEBGL)
2924 { "RGB565", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8D62) } },
2925#else
2926 { 0, 0, NoIntrinsic, { 0, 0 } },
2927#endif
2928#if ENABLE(WEBGL)
2929 { "DEPTH_COMPONENT16", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x81A5) } },
2930#else
2931 { 0, 0, NoIntrinsic, { 0, 0 } },
2932#endif
2933#if ENABLE(WEBGL)
2934 { "STENCIL_INDEX", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x1901) } },
2935#else
2936 { 0, 0, NoIntrinsic, { 0, 0 } },
2937#endif
2938#if ENABLE(WEBGL)
2939 { "STENCIL_INDEX8", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8D48) } },
2940#else
2941 { 0, 0, NoIntrinsic, { 0, 0 } },
2942#endif
2943#if ENABLE(WEBGL)
2944 { "DEPTH_STENCIL", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x84F9) } },
2945#else
2946 { 0, 0, NoIntrinsic, { 0, 0 } },
2947#endif
2948#if ENABLE(WEBGL)
2949 { "RENDERBUFFER_WIDTH", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8D42) } },
2950#else
2951 { 0, 0, NoIntrinsic, { 0, 0 } },
2952#endif
2953#if ENABLE(WEBGL)
2954 { "RENDERBUFFER_HEIGHT", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8D43) } },
2955#else
2956 { 0, 0, NoIntrinsic, { 0, 0 } },
2957#endif
2958#if ENABLE(WEBGL)
2959 { "RENDERBUFFER_INTERNAL_FORMAT", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8D44) } },
2960#else
2961 { 0, 0, NoIntrinsic, { 0, 0 } },
2962#endif
2963#if ENABLE(WEBGL)
2964 { "RENDERBUFFER_RED_SIZE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8D50) } },
2965#else
2966 { 0, 0, NoIntrinsic, { 0, 0 } },
2967#endif
2968#if ENABLE(WEBGL)
2969 { "RENDERBUFFER_GREEN_SIZE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8D51) } },
2970#else
2971 { 0, 0, NoIntrinsic, { 0, 0 } },
2972#endif
2973#if ENABLE(WEBGL)
2974 { "RENDERBUFFER_BLUE_SIZE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8D52) } },
2975#else
2976 { 0, 0, NoIntrinsic, { 0, 0 } },
2977#endif
2978#if ENABLE(WEBGL)
2979 { "RENDERBUFFER_ALPHA_SIZE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8D53) } },
2980#else
2981 { 0, 0, NoIntrinsic, { 0, 0 } },
2982#endif
2983#if ENABLE(WEBGL)
2984 { "RENDERBUFFER_DEPTH_SIZE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8D54) } },
2985#else
2986 { 0, 0, NoIntrinsic, { 0, 0 } },
2987#endif
2988#if ENABLE(WEBGL)
2989 { "RENDERBUFFER_STENCIL_SIZE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8D55) } },
2990#else
2991 { 0, 0, NoIntrinsic, { 0, 0 } },
2992#endif
2993#if ENABLE(WEBGL)
2994 { "FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8CD0) } },
2995#else
2996 { 0, 0, NoIntrinsic, { 0, 0 } },
2997#endif
2998#if ENABLE(WEBGL)
2999 { "FRAMEBUFFER_ATTACHMENT_OBJECT_NAME", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8CD1) } },
3000#else
3001 { 0, 0, NoIntrinsic, { 0, 0 } },
3002#endif
3003#if ENABLE(WEBGL)
3004 { "FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8CD2) } },
3005#else
3006 { 0, 0, NoIntrinsic, { 0, 0 } },
3007#endif
3008#if ENABLE(WEBGL)
3009 { "FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8CD3) } },
3010#else
3011 { 0, 0, NoIntrinsic, { 0, 0 } },
3012#endif
3013#if ENABLE(WEBGL)
3014 { "COLOR_ATTACHMENT0", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8CE0) } },
3015#else
3016 { 0, 0, NoIntrinsic, { 0, 0 } },
3017#endif
3018#if ENABLE(WEBGL)
3019 { "DEPTH_ATTACHMENT", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8D00) } },
3020#else
3021 { 0, 0, NoIntrinsic, { 0, 0 } },
3022#endif
3023#if ENABLE(WEBGL)
3024 { "STENCIL_ATTACHMENT", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8D20) } },
3025#else
3026 { 0, 0, NoIntrinsic, { 0, 0 } },
3027#endif
3028#if ENABLE(WEBGL)
3029 { "DEPTH_STENCIL_ATTACHMENT", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x821A) } },
3030#else
3031 { 0, 0, NoIntrinsic, { 0, 0 } },
3032#endif
3033#if ENABLE(WEBGL)
3034 { "NONE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0) } },
3035#else
3036 { 0, 0, NoIntrinsic, { 0, 0 } },
3037#endif
3038#if ENABLE(WEBGL)
3039 { "FRAMEBUFFER_COMPLETE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8CD5) } },
3040#else
3041 { 0, 0, NoIntrinsic, { 0, 0 } },
3042#endif
3043#if ENABLE(WEBGL)
3044 { "FRAMEBUFFER_INCOMPLETE_ATTACHMENT", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8CD6) } },
3045#else
3046 { 0, 0, NoIntrinsic, { 0, 0 } },
3047#endif
3048#if ENABLE(WEBGL)
3049 { "FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8CD7) } },
3050#else
3051 { 0, 0, NoIntrinsic, { 0, 0 } },
3052#endif
3053#if ENABLE(WEBGL)
3054 { "FRAMEBUFFER_INCOMPLETE_DIMENSIONS", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8CD9) } },
3055#else
3056 { 0, 0, NoIntrinsic, { 0, 0 } },
3057#endif
3058#if ENABLE(WEBGL)
3059 { "FRAMEBUFFER_UNSUPPORTED", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8CDD) } },
3060#else
3061 { 0, 0, NoIntrinsic, { 0, 0 } },
3062#endif
3063#if ENABLE(WEBGL)
3064 { "FRAMEBUFFER_BINDING", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8CA6) } },
3065#else
3066 { 0, 0, NoIntrinsic, { 0, 0 } },
3067#endif
3068#if ENABLE(WEBGL)
3069 { "RENDERBUFFER_BINDING", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8CA7) } },
3070#else
3071 { 0, 0, NoIntrinsic, { 0, 0 } },
3072#endif
3073#if ENABLE(WEBGL)
3074 { "MAX_RENDERBUFFER_SIZE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x84E8) } },
3075#else
3076 { 0, 0, NoIntrinsic, { 0, 0 } },
3077#endif
3078#if ENABLE(WEBGL)
3079 { "INVALID_FRAMEBUFFER_OPERATION", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0506) } },
3080#else
3081 { 0, 0, NoIntrinsic, { 0, 0 } },
3082#endif
3083#if ENABLE(WEBGL)
3084 { "UNPACK_FLIP_Y_WEBGL", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x9240) } },
3085#else
3086 { 0, 0, NoIntrinsic, { 0, 0 } },
3087#endif
3088#if ENABLE(WEBGL)
3089 { "UNPACK_PREMULTIPLY_ALPHA_WEBGL", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x9241) } },
3090#else
3091 { 0, 0, NoIntrinsic, { 0, 0 } },
3092#endif
3093#if ENABLE(WEBGL)
3094 { "CONTEXT_LOST_WEBGL", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x9242) } },
3095#else
3096 { 0, 0, NoIntrinsic, { 0, 0 } },
3097#endif
3098#if ENABLE(WEBGL)
3099 { "UNPACK_COLORSPACE_CONVERSION_WEBGL", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x9243) } },
3100#else
3101 { 0, 0, NoIntrinsic, { 0, 0 } },
3102#endif
3103#if ENABLE(WEBGL)
3104 { "BROWSER_DEFAULT_WEBGL", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x9244) } },
3105#else
3106 { 0, 0, NoIntrinsic, { 0, 0 } },
3107#endif
3108};
3109
3110static const HashTable JSWebGLRenderingContextConstructorTable = { 297, 1023, true, nullptr, JSWebGLRenderingContextConstructorTableValues, JSWebGLRenderingContextConstructorTableIndex };
3111template<> const unsigned JSWebGLRenderingContextDOMConstructor::StructureFlags = Base::StructureFlags | JSC::HasStaticPropertyTable;
3112template<> const ClassInfo JSWebGLRenderingContextDOMConstructor::s_info = { "WebGLRenderingContext", &Base::s_info, &JSWebGLRenderingContextConstructorTable, nullptr, CREATE_METHOD_TABLE(JSWebGLRenderingContextDOMConstructor) };
3113
3114template<> JSValue JSWebGLRenderingContextDOMConstructor::prototypeForStructure(JSC::VM& vm, const JSDOMGlobalObject& globalObject)
3115{
3116 UNUSED_PARAM(vm);
3117 return globalObject.functionPrototype();
3118}
3119
3120template<> void JSWebGLRenderingContextDOMConstructor::initializeProperties(VM& vm, JSDOMGlobalObject& globalObject)
3121{
3122 putDirect(vm, vm.propertyNames->prototype, JSWebGLRenderingContext::prototype(vm, globalObject), JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontEnum);
3123 putDirect(vm, vm.propertyNames->name, jsNontrivialString(vm, "WebGLRenderingContext"_s), JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontEnum);
3124 putDirect(vm, vm.propertyNames->length, jsNumber(0), JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontEnum);
3125 reifyStaticProperties(vm, nullptr, JSWebGLRenderingContextConstructorTableValues, *this);
3126}
3127
3128/* Hash table for Prototype */
3129
3130static const struct CompactHashIndex JSWebGLRenderingContextPrototypeTableIndex[1100] = {
3131 { -1, -1 },
3132 { -1, -1 },
3133 { 163, 1040 },
3134 { -1, -1 },
3135 { -1, -1 },
3136 { -1, -1 },
3137 { -1, -1 },
3138 { -1, -1 },
3139 { -1, -1 },
3140 { -1, -1 },
3141 { 71, -1 },
3142 { -1, -1 },
3143 { -1, -1 },
3144 { 24, 1024 },
3145 { 145, 1099 },
3146 { -1, -1 },
3147 { -1, -1 },
3148 { 107, 1039 },
3149 { 435, -1 },
3150 { -1, -1 },
3151 { 81, -1 },
3152 { -1, -1 },
3153 { -1, -1 },
3154 { -1, -1 },
3155 { -1, -1 },
3156 { -1, -1 },
3157 { 345, -1 },
3158 { 19, -1 },
3159 { 354, -1 },
3160 { -1, -1 },
3161 { -1, -1 },
3162 { 293, -1 },
3163 { -1, -1 },
3164 { -1, -1 },
3165 { 101, -1 },
3166 { -1, -1 },
3167 { -1, -1 },
3168 { -1, -1 },
3169 { -1, -1 },
3170 { -1, -1 },
3171 { -1, -1 },
3172 { -1, -1 },
3173 { -1, -1 },
3174 { -1, -1 },
3175 { -1, -1 },
3176 { 424, -1 },
3177 { -1, -1 },
3178 { -1, -1 },
3179 { -1, -1 },
3180 { -1, -1 },
3181 { 117, -1 },
3182 { -1, -1 },
3183 { -1, -1 },
3184 { 184, -1 },
3185 { 260, -1 },
3186 { -1, -1 },
3187 { 296, -1 },
3188 { -1, -1 },
3189 { 369, -1 },
3190 { -1, -1 },
3191 { -1, -1 },
3192 { -1, -1 },
3193 { -1, -1 },
3194 { -1, -1 },
3195 { -1, -1 },
3196 { -1, -1 },
3197 { -1, -1 },
3198 { -1, -1 },
3199 { 54, 1088 },
3200 { 334, -1 },
3201 { -1, -1 },
3202 { 325, -1 },
3203 { -1, -1 },
3204 { -1, -1 },
3205 { -1, -1 },
3206 { -1, -1 },
3207 { -1, -1 },
3208 { 125, 1054 },
3209 { -1, -1 },
3210 { 427, -1 },
3211 { -1, -1 },
3212 { -1, -1 },
3213 { 292, -1 },
3214 { 395, -1 },
3215 { -1, -1 },
3216 { -1, -1 },
3217 { -1, -1 },
3218 { -1, -1 },
3219 { -1, -1 },
3220 { -1, -1 },
3221 { -1, -1 },
3222 { 153, 1061 },
3223 { -1, -1 },
3224 { -1, -1 },
3225 { -1, -1 },
3226 { -1, -1 },
3227 { -1, -1 },
3228 { 370, -1 },
3229 { -1, -1 },
3230 { -1, -1 },
3231 { -1, -1 },
3232 { -1, -1 },
3233 { -1, -1 },
3234 { 96, -1 },
3235 { -1, -1 },
3236 { 121, -1 },
3237 { -1, -1 },
3238 { -1, -1 },
3239 { -1, -1 },
3240 { -1, -1 },
3241 { -1, -1 },
3242 { 92, -1 },
3243 { -1, -1 },
3244 { -1, -1 },
3245 { -1, -1 },
3246 { -1, -1 },
3247 { -1, -1 },
3248 { -1, -1 },
3249 { 384, -1 },
3250 { -1, -1 },
3251 { -1, -1 },
3252 { -1, -1 },
3253 { -1, -1 },
3254 { -1, -1 },
3255 { -1, -1 },
3256 { -1, -1 },
3257 { 32, -1 },
3258 { 177, -1 },
3259 { -1, -1 },
3260 { 141, 1081 },
3261 { 7, 1026 },
3262 { 90, -1 },
3263 { -1, -1 },
3264 { 98, -1 },
3265 { -1, -1 },
3266 { 252, -1 },
3267 { -1, -1 },
3268 { -1, -1 },
3269 { -1, -1 },
3270 { -1, -1 },
3271 { -1, -1 },
3272 { -1, -1 },
3273 { -1, -1 },
3274 { -1, -1 },
3275 { -1, -1 },
3276 { -1, -1 },
3277 { -1, -1 },
3278 { -1, -1 },
3279 { -1, -1 },
3280 { 30, -1 },
3281 { -1, -1 },
3282 { -1, -1 },
3283 { -1, -1 },
3284 { -1, -1 },
3285 { -1, -1 },
3286 { -1, -1 },
3287 { 335, -1 },
3288 { -1, -1 },
3289 { -1, -1 },
3290 { -1, -1 },
3291 { -1, -1 },
3292 { -1, -1 },
3293 { -1, -1 },
3294 { -1, -1 },
3295 { -1, -1 },
3296 { 282, -1 },
3297 { -1, -1 },
3298 { 134, -1 },
3299 { -1, -1 },
3300 { -1, -1 },
3301 { -1, -1 },
3302 { -1, -1 },
3303 { -1, -1 },
3304 { 407, -1 },
3305 { -1, -1 },
3306 { -1, -1 },
3307 { 172, -1 },
3308 { 358, -1 },
3309 { -1, -1 },
3310 { 13, -1 },
3311 { -1, -1 },
3312 { -1, -1 },
3313 { 356, -1 },
3314 { -1, -1 },
3315 { -1, -1 },
3316 { -1, -1 },
3317 { 182, -1 },
3318 { -1, -1 },
3319 { -1, -1 },
3320 { -1, -1 },
3321 { 79, -1 },
3322 { -1, -1 },
3323 { -1, -1 },
3324 { -1, -1 },
3325 { -1, -1 },
3326 { -1, -1 },
3327 { -1, -1 },
3328 { 72, -1 },
3329 { -1, -1 },
3330 { 59, 1043 },
3331 { 257, -1 },
3332 { -1, -1 },
3333 { -1, -1 },
3334 { 69, 1050 },
3335 { 313, -1 },
3336 { -1, -1 },
3337 { 138, -1 },
3338 { -1, -1 },
3339 { 365, 1083 },
3340 { -1, -1 },
3341 { 237, -1 },
3342 { 377, -1 },
3343 { -1, -1 },
3344 { -1, -1 },
3345 { -1, -1 },
3346 { -1, -1 },
3347 { -1, -1 },
3348 { -1, -1 },
3349 { 191, -1 },
3350 { -1, -1 },
3351 { -1, -1 },
3352 { -1, -1 },
3353 { -1, -1 },
3354 { -1, -1 },
3355 { -1, -1 },
3356 { -1, -1 },
3357 { -1, -1 },
3358 { -1, -1 },
3359 { -1, -1 },
3360 { 176, -1 },
3361 { 417, -1 },
3362 { 266, -1 },
3363 { 114, -1 },
3364 { -1, -1 },
3365 { 171, -1 },
3366 { -1, -1 },
3367 { 100, -1 },
3368 { -1, -1 },
3369 { -1, -1 },
3370 { 122, -1 },
3371 { -1, -1 },
3372 { -1, -1 },
3373 { -1, -1 },
3374 { -1, -1 },
3375 { -1, -1 },
3376 { -1, -1 },
3377 { -1, -1 },
3378 { -1, -1 },
3379 { -1, -1 },
3380 { 343, -1 },
3381 { 155, -1 },
3382 { -1, -1 },
3383 { -1, -1 },
3384 { -1, -1 },
3385 { -1, -1 },
3386 { -1, -1 },
3387 { 227, -1 },
3388 { -1, -1 },
3389 { 147, -1 },
3390 { 246, 1057 },
3391 { -1, -1 },
3392 { -1, -1 },
3393 { -1, -1 },
3394 { 185, 1044 },
3395 { -1, -1 },
3396 { -1, -1 },
3397 { -1, -1 },
3398 { -1, -1 },
3399 { -1, -1 },
3400 { -1, -1 },
3401 { -1, -1 },
3402 { -1, -1 },
3403 { -1, -1 },
3404 { 146, 1079 },
3405 { -1, -1 },
3406 { -1, -1 },
3407 { 204, -1 },
3408 { 102, 1048 },
3409 { 437, -1 },
3410 { -1, -1 },
3411 { -1, -1 },
3412 { 306, -1 },
3413 { 209, 1051 },
3414 { 364, -1 },
3415 { -1, -1 },
3416 { -1, -1 },
3417 { 285, -1 },
3418 { -1, -1 },
3419 { -1, -1 },
3420 { -1, -1 },
3421 { -1, -1 },
3422 { 342, -1 },
3423 { -1, -1 },
3424 { -1, -1 },
3425 { -1, -1 },
3426 { -1, -1 },
3427 { 319, -1 },
3428 { -1, -1 },
3429 { -1, -1 },
3430 { 82, -1 },
3431 { -1, -1 },
3432 { -1, -1 },
3433 { -1, -1 },
3434 { -1, -1 },
3435 { 332, -1 },
3436 { 126, -1 },
3437 { 97, -1 },
3438 { -1, -1 },
3439 { -1, -1 },
3440 { 229, -1 },
3441 { 221, -1 },
3442 { -1, -1 },
3443 { -1, -1 },
3444 { 130, -1 },
3445 { -1, -1 },
3446 { -1, -1 },
3447 { -1, -1 },
3448 { -1, -1 },
3449 { -1, -1 },
3450 { 109, -1 },
3451 { -1, -1 },
3452 { 207, -1 },
3453 { -1, -1 },
3454 { -1, -1 },
3455 { 308, -1 },
3456 { -1, -1 },
3457 { -1, -1 },
3458 { -1, -1 },
3459 { 210, 1056 },
3460 { -1, -1 },
3461 { -1, -1 },
3462 { -1, -1 },
3463 { -1, -1 },
3464 { 201, 1064 },
3465 { -1, -1 },
3466 { -1, -1 },
3467 { -1, -1 },
3468 { 25, 1097 },
3469 { 203, -1 },
3470 { -1, -1 },
3471 { 83, 1063 },
3472 { 169, -1 },
3473 { 300, -1 },
3474 { -1, -1 },
3475 { -1, -1 },
3476 { 0, -1 },
3477 { 10, -1 },
3478 { 307, -1 },
3479 { -1, -1 },
3480 { -1, -1 },
3481 { -1, -1 },
3482 { -1, -1 },
3483 { 111, 1052 },
3484 { 288, -1 },
3485 { -1, -1 },
3486 { -1, -1 },
3487 { -1, -1 },
3488 { -1, -1 },
3489 { -1, -1 },
3490 { 432, -1 },
3491 { 77, -1 },
3492 { -1, -1 },
3493 { -1, -1 },
3494 { 152, -1 },
3495 { 37, -1 },
3496 { -1, -1 },
3497 { 1, -1 },
3498 { -1, -1 },
3499 { -1, -1 },
3500 { -1, -1 },
3501 { -1, -1 },
3502 { -1, -1 },
3503 { -1, -1 },
3504 { -1, -1 },
3505 { -1, -1 },
3506 { -1, -1 },
3507 { -1, -1 },
3508 { 6, -1 },
3509 { -1, -1 },
3510 { 406, -1 },
3511 { 70, 1068 },
3512 { -1, -1 },
3513 { -1, -1 },
3514 { 376, -1 },
3515 { -1, -1 },
3516 { 337, -1 },
3517 { 413, -1 },
3518 { -1, -1 },
3519 { -1, -1 },
3520 { 170, -1 },
3521 { -1, -1 },
3522 { 259, -1 },
3523 { 362, -1 },
3524 { -1, -1 },
3525 { -1, -1 },
3526 { 186, 1077 },
3527 { -1, -1 },
3528 { -1, -1 },
3529 { -1, -1 },
3530 { 418, -1 },
3531 { -1, -1 },
3532 { -1, -1 },
3533 { -1, -1 },
3534 { -1, -1 },
3535 { 40, -1 },
3536 { 415, -1 },
3537 { -1, -1 },
3538 { -1, -1 },
3539 { 242, 1092 },
3540 { -1, -1 },
3541 { -1, -1 },
3542 { -1, -1 },
3543 { -1, -1 },
3544 { 148, -1 },
3545 { 192, -1 },
3546 { -1, -1 },
3547 { -1, -1 },
3548 { -1, -1 },
3549 { -1, -1 },
3550 { 16, 1028 },
3551 { 48, -1 },
3552 { -1, -1 },
3553 { -1, -1 },
3554 { 151, -1 },
3555 { -1, -1 },
3556 { -1, -1 },
3557 { -1, -1 },
3558 { 254, -1 },
3559 { -1, -1 },
3560 { 50, -1 },
3561 { 321, -1 },
3562 { -1, -1 },
3563 { 361, 1080 },
3564 { -1, -1 },
3565 { -1, -1 },
3566 { -1, -1 },
3567 { -1, -1 },
3568 { 240, -1 },
3569 { -1, -1 },
3570 { -1, -1 },
3571 { -1, -1 },
3572 { 372, -1 },
3573 { -1, -1 },
3574 { -1, -1 },
3575 { -1, -1 },
3576 { -1, -1 },
3577 { -1, -1 },
3578 { -1, -1 },
3579 { -1, -1 },
3580 { -1, -1 },
3581 { 44, -1 },
3582 { -1, -1 },
3583 { 14, -1 },
3584 { 144, 1041 },
3585 { -1, -1 },
3586 { 108, -1 },
3587 { -1, -1 },
3588 { -1, -1 },
3589 { -1, -1 },
3590 { -1, -1 },
3591 { 68, 1070 },
3592 { -1, -1 },
3593 { -1, -1 },
3594 { -1, -1 },
3595 { 200, -1 },
3596 { 39, 1035 },
3597 { -1, -1 },
3598 { -1, -1 },
3599 { 346, -1 },
3600 { -1, -1 },
3601 { -1, -1 },
3602 { -1, -1 },
3603 { -1, -1 },
3604 { 374, -1 },
3605 { 55, -1 },
3606 { -1, -1 },
3607 { -1, -1 },
3608 { 408, -1 },
3609 { -1, -1 },
3610 { -1, -1 },
3611 { 27, 1033 },
3612 { -1, -1 },
3613 { -1, -1 },
3614 { -1, -1 },
3615 { -1, -1 },
3616 { -1, -1 },
3617 { 17, -1 },
3618 { 223, -1 },
3619 { -1, -1 },
3620 { 228, 1071 },
3621 { -1, -1 },
3622 { 156, -1 },
3623 { 110, -1 },
3624 { 42, -1 },
3625 { -1, -1 },
3626 { -1, -1 },
3627 { 396, -1 },
3628 { -1, -1 },
3629 { -1, -1 },
3630 { 63, 1047 },
3631 { -1, -1 },
3632 { -1, -1 },
3633 { 62, -1 },
3634 { -1, -1 },
3635 { 161, -1 },
3636 { -1, -1 },
3637 { 73, 1031 },
3638 { 333, 1094 },
3639 { 135, -1 },
3640 { 421, -1 },
3641 { 23, -1 },
3642 { -1, -1 },
3643 { 8, -1 },
3644 { -1, -1 },
3645 { 113, -1 },
3646 { -1, -1 },
3647 { -1, -1 },
3648 { -1, -1 },
3649 { -1, -1 },
3650 { -1, -1 },
3651 { 212, -1 },
3652 { -1, -1 },
3653 { -1, -1 },
3654 { -1, -1 },
3655 { -1, -1 },
3656 { -1, -1 },
3657 { -1, -1 },
3658 { -1, -1 },
3659 { -1, -1 },
3660 { -1, -1 },
3661 { 375, -1 },
3662 { -1, -1 },
3663 { 359, -1 },
3664 { 238, -1 },
3665 { -1, -1 },
3666 { -1, -1 },
3667 { -1, -1 },
3668 { -1, -1 },
3669 { -1, -1 },
3670 { -1, -1 },
3671 { -1, -1 },
3672 { -1, -1 },
3673 { -1, -1 },
3674 { -1, -1 },
3675 { -1, -1 },
3676 { -1, -1 },
3677 { -1, -1 },
3678 { -1, -1 },
3679 { 230, -1 },
3680 { -1, -1 },
3681 { -1, -1 },
3682 { 255, 1055 },
3683 { -1, -1 },
3684 { -1, -1 },
3685 { 206, -1 },
3686 { 393, -1 },
3687 { -1, -1 },
3688 { -1, -1 },
3689 { -1, -1 },
3690 { 350, -1 },
3691 { -1, -1 },
3692 { -1, -1 },
3693 { 166, -1 },
3694 { -1, -1 },
3695 { -1, -1 },
3696 { 341, 1090 },
3697 { 178, -1 },
3698 { 64, -1 },
3699 { 136, -1 },
3700 { -1, -1 },
3701 { 235, 1076 },
3702 { 45, -1 },
3703 { -1, -1 },
3704 { -1, -1 },
3705 { -1, -1 },
3706 { 3, -1 },
3707 { -1, -1 },
3708 { -1, -1 },
3709 { -1, -1 },
3710 { -1, -1 },
3711 { 367, -1 },
3712 { -1, -1 },
3713 { -1, -1 },
3714 { -1, -1 },
3715 { -1, -1 },
3716 { 436, -1 },
3717 { 279, -1 },
3718 { 419, -1 },
3719 { 398, -1 },
3720 { 99, 1066 },
3721 { -1, -1 },
3722 { 303, -1 },
3723 { -1, -1 },
3724 { 215, -1 },
3725 { 18, -1 },
3726 { 36, -1 },
3727 { -1, -1 },
3728 { 174, -1 },
3729 { -1, -1 },
3730 { -1, -1 },
3731 { 115, 1045 },
3732 { 43, 1042 },
3733 { 422, -1 },
3734 { 183, -1 },
3735 { -1, -1 },
3736 { -1, -1 },
3737 { 353, -1 },
3738 { -1, -1 },
3739 { -1, -1 },
3740 { -1, -1 },
3741 { -1, -1 },
3742 { 106, -1 },
3743 { -1, -1 },
3744 { 66, 1059 },
3745 { -1, -1 },
3746 { -1, -1 },
3747 { -1, -1 },
3748 { -1, -1 },
3749 { 86, -1 },
3750 { -1, -1 },
3751 { 269, -1 },
3752 { -1, -1 },
3753 { 336, -1 },
3754 { -1, -1 },
3755 { -1, -1 },
3756 { -1, -1 },
3757 { -1, -1 },
3758 { 429, -1 },
3759 { -1, -1 },
3760 { -1, -1 },
3761 { 425, -1 },
3762 { -1, -1 },
3763 { 132, -1 },
3764 { -1, -1 },
3765 { -1, -1 },
3766 { 173, 1085 },
3767 { -1, -1 },
3768 { 272, -1 },
3769 { -1, -1 },
3770 { -1, -1 },
3771 { -1, -1 },
3772 { -1, -1 },
3773 { -1, -1 },
3774 { -1, -1 },
3775 { -1, -1 },
3776 { 231, -1 },
3777 { -1, -1 },
3778 { 157, -1 },
3779 { -1, -1 },
3780 { -1, -1 },
3781 { -1, -1 },
3782 { -1, -1 },
3783 { -1, -1 },
3784 { 298, -1 },
3785 { 189, -1 },
3786 { -1, -1 },
3787 { -1, -1 },
3788 { 371, -1 },
3789 { -1, -1 },
3790 { 357, -1 },
3791 { 331, -1 },
3792 { -1, -1 },
3793 { 190, -1 },
3794 { 434, -1 },
3795 { 165, -1 },
3796 { -1, -1 },
3797 { -1, -1 },
3798 { -1, -1 },
3799 { -1, -1 },
3800 { -1, -1 },
3801 { 289, -1 },
3802 { -1, -1 },
3803 { -1, -1 },
3804 { -1, -1 },
3805 { -1, -1 },
3806 { 271, -1 },
3807 { -1, -1 },
3808 { 89, -1 },
3809 { -1, -1 },
3810 { -1, -1 },
3811 { 363, -1 },
3812 { -1, -1 },
3813 { -1, -1 },
3814 { -1, -1 },
3815 { 302, -1 },
3816 { 57, -1 },
3817 { 87, 1082 },
3818 { 381, -1 },
3819 { 65, 1084 },
3820 { -1, -1 },
3821 { 347, -1 },
3822 { -1, -1 },
3823 { -1, -1 },
3824 { 67, -1 },
3825 { 139, 1038 },
3826 { -1, -1 },
3827 { 187, -1 },
3828 { 433, -1 },
3829 { -1, -1 },
3830 { 318, -1 },
3831 { 85, -1 },
3832 { -1, -1 },
3833 { 149, -1 },
3834 { -1, -1 },
3835 { -1, -1 },
3836 { -1, -1 },
3837 { -1, -1 },
3838 { -1, -1 },
3839 { 9, -1 },
3840 { 197, -1 },
3841 { -1, -1 },
3842 { 198, -1 },
3843 { -1, -1 },
3844 { 34, 1065 },
3845 { 389, -1 },
3846 { 414, -1 },
3847 { 404, -1 },
3848 { -1, -1 },
3849 { -1, -1 },
3850 { 58, -1 },
3851 { -1, -1 },
3852 { 213, 1087 },
3853 { 287, -1 },
3854 { -1, -1 },
3855 { 392, -1 },
3856 { -1, -1 },
3857 { 195, -1 },
3858 { -1, -1 },
3859 { -1, -1 },
3860 { 179, -1 },
3861 { -1, -1 },
3862 { -1, -1 },
3863 { 276, -1 },
3864 { 239, -1 },
3865 { 33, 1027 },
3866 { -1, -1 },
3867 { -1, -1 },
3868 { 250, -1 },
3869 { -1, -1 },
3870 { 366, -1 },
3871 { -1, -1 },
3872 { 232, -1 },
3873 { -1, -1 },
3874 { -1, -1 },
3875 { 142, -1 },
3876 { 305, -1 },
3877 { -1, -1 },
3878 { -1, -1 },
3879 { -1, -1 },
3880 { 243, 1058 },
3881 { 301, -1 },
3882 { 402, -1 },
3883 { -1, -1 },
3884 { -1, -1 },
3885 { -1, -1 },
3886 { 105, -1 },
3887 { -1, -1 },
3888 { 400, -1 },
3889 { 53, -1 },
3890 { -1, -1 },
3891 { 2, -1 },
3892 { -1, -1 },
3893 { 245, -1 },
3894 { 150, -1 },
3895 { 15, 1037 },
3896 { -1, -1 },
3897 { 388, -1 },
3898 { -1, -1 },
3899 { -1, -1 },
3900 { -1, -1 },
3901 { 61, 1030 },
3902 { 340, -1 },
3903 { 84, 1046 },
3904 { -1, -1 },
3905 { 368, -1 },
3906 { -1, -1 },
3907 { -1, -1 },
3908 { 31, -1 },
3909 { 11, -1 },
3910 { 295, -1 },
3911 { -1, -1 },
3912 { -1, -1 },
3913 { -1, -1 },
3914 { -1, -1 },
3915 { 329, -1 },
3916 { -1, -1 },
3917 { -1, -1 },
3918 { 217, -1 },
3919 { 46, -1 },
3920 { -1, -1 },
3921 { 140, -1 },
3922 { -1, -1 },
3923 { -1, -1 },
3924 { 348, -1 },
3925 { -1, -1 },
3926 { 317, -1 },
3927 { -1, -1 },
3928 { -1, -1 },
3929 { -1, -1 },
3930 { -1, -1 },
3931 { -1, -1 },
3932 { -1, -1 },
3933 { 286, -1 },
3934 { -1, -1 },
3935 { 129, -1 },
3936 { -1, -1 },
3937 { 104, -1 },
3938 { 4, -1 },
3939 { -1, -1 },
3940 { -1, -1 },
3941 { -1, -1 },
3942 { -1, -1 },
3943 { -1, -1 },
3944 { 103, -1 },
3945 { -1, -1 },
3946 { 75, 1034 },
3947 { -1, -1 },
3948 { -1, -1 },
3949 { 355, 1091 },
3950 { -1, -1 },
3951 { -1, -1 },
3952 { -1, -1 },
3953 { 160, -1 },
3954 { 41, -1 },
3955 { 167, -1 },
3956 { -1, -1 },
3957 { 208, -1 },
3958 { -1, -1 },
3959 { -1, -1 },
3960 { -1, -1 },
3961 { 351, -1 },
3962 { -1, -1 },
3963 { -1, -1 },
3964 { -1, -1 },
3965 { 233, -1 },
3966 { -1, -1 },
3967 { -1, -1 },
3968 { -1, -1 },
3969 { -1, -1 },
3970 { -1, -1 },
3971 { -1, -1 },
3972 { -1, -1 },
3973 { 226, -1 },
3974 { -1, -1 },
3975 { -1, -1 },
3976 { -1, -1 },
3977 { -1, -1 },
3978 { -1, -1 },
3979 { -1, -1 },
3980 { -1, -1 },
3981 { -1, -1 },
3982 { 387, -1 },
3983 { -1, -1 },
3984 { -1, -1 },
3985 { -1, -1 },
3986 { -1, -1 },
3987 { 256, -1 },
3988 { -1, -1 },
3989 { 244, -1 },
3990 { 236, -1 },
3991 { 344, -1 },
3992 { 112, 1049 },
3993 { 60, -1 },
3994 { -1, -1 },
3995 { 74, -1 },
3996 { -1, -1 },
3997 { -1, -1 },
3998 { -1, -1 },
3999 { -1, -1 },
4000 { 290, -1 },
4001 { -1, -1 },
4002 { 322, -1 },
4003 { 137, -1 },
4004 { -1, -1 },
4005 { -1, -1 },
4006 { 143, -1 },
4007 { -1, -1 },
4008 { -1, -1 },
4009 { -1, -1 },
4010 { -1, -1 },
4011 { 49, -1 },
4012 { 93, 1053 },
4013 { -1, -1 },
4014 { -1, -1 },
4015 { -1, -1 },
4016 { 222, -1 },
4017 { -1, -1 },
4018 { 128, -1 },
4019 { 264, -1 },
4020 { 261, -1 },
4021 { -1, -1 },
4022 { 247, -1 },
4023 { -1, -1 },
4024 { 314, -1 },
4025 { -1, -1 },
4026 { 297, -1 },
4027 { -1, -1 },
4028 { -1, -1 },
4029 { 123, -1 },
4030 { 12, 1067 },
4031 { 175, -1 },
4032 { -1, -1 },
4033 { 214, -1 },
4034 { -1, -1 },
4035 { 273, -1 },
4036 { 119, 1095 },
4037 { -1, -1 },
4038 { -1, -1 },
4039 { -1, -1 },
4040 { 22, 1029 },
4041 { -1, -1 },
4042 { -1, -1 },
4043 { 219, 1089 },
4044 { -1, -1 },
4045 { -1, -1 },
4046 { -1, -1 },
4047 { -1, -1 },
4048 { -1, -1 },
4049 { -1, -1 },
4050 { -1, -1 },
4051 { 118, -1 },
4052 { 180, -1 },
4053 { -1, -1 },
4054 { -1, -1 },
4055 { -1, -1 },
4056 { -1, -1 },
4057 { -1, -1 },
4058 { 20, -1 },
4059 { -1, -1 },
4060 { -1, -1 },
4061 { -1, -1 },
4062 { -1, -1 },
4063 { -1, -1 },
4064 { -1, -1 },
4065 { -1, -1 },
4066 { -1, -1 },
4067 { -1, -1 },
4068 { 216, -1 },
4069 { 202, -1 },
4070 { -1, -1 },
4071 { 270, -1 },
4072 { -1, -1 },
4073 { 28, 1096 },
4074 { 312, -1 },
4075 { -1, -1 },
4076 { -1, -1 },
4077 { -1, -1 },
4078 { 194, -1 },
4079 { -1, -1 },
4080 { -1, -1 },
4081 { -1, -1 },
4082 { -1, -1 },
4083 { 323, -1 },
4084 { -1, -1 },
4085 { 373, -1 },
4086 { -1, -1 },
4087 { 311, -1 },
4088 { 360, -1 },
4089 { 91, -1 },
4090 { 299, 1093 },
4091 { -1, -1 },
4092 { -1, -1 },
4093 { -1, -1 },
4094 { -1, -1 },
4095 { 220, -1 },
4096 { -1, -1 },
4097 { 241, -1 },
4098 { 378, -1 },
4099 { -1, -1 },
4100 { -1, -1 },
4101 { -1, -1 },
4102 { -1, -1 },
4103 { -1, -1 },
4104 { -1, -1 },
4105 { -1, -1 },
4106 { 310, -1 },
4107 { -1, -1 },
4108 { 158, -1 },
4109 { -1, -1 },
4110 { -1, -1 },
4111 { -1, -1 },
4112 { 199, -1 },
4113 { 274, -1 },
4114 { -1, -1 },
4115 { -1, -1 },
4116 { 265, -1 },
4117 { 56, -1 },
4118 { 159, -1 },
4119 { 5, 1025 },
4120 { -1, -1 },
4121 { -1, -1 },
4122 { 88, -1 },
4123 { -1, -1 },
4124 { -1, -1 },
4125 { 248, -1 },
4126 { 224, -1 },
4127 { -1, -1 },
4128 { -1, -1 },
4129 { -1, -1 },
4130 { 35, 1078 },
4131 { 94, 1036 },
4132 { -1, -1 },
4133 { -1, -1 },
4134 { 294, -1 },
4135 { -1, -1 },
4136 { -1, -1 },
4137 { 330, -1 },
4138 { -1, -1 },
4139 { 21, -1 },
4140 { -1, -1 },
4141 { -1, -1 },
4142 { 275, -1 },
4143 { -1, -1 },
4144 { -1, -1 },
4145 { 309, -1 },
4146 { 26, 1069 },
4147 { 268, 1060 },
4148 { 426, -1 },
4149 { -1, -1 },
4150 { 386, -1 },
4151 { -1, -1 },
4152 { -1, -1 },
4153 { -1, -1 },
4154 { 124, -1 },
4155 { 29, -1 },
4156 { 38, -1 },
4157 { 47, -1 },
4158 { 51, -1 },
4159 { 52, -1 },
4160 { 76, -1 },
4161 { 78, 1032 },
4162 { 80, -1 },
4163 { 95, -1 },
4164 { 116, -1 },
4165 { 120, -1 },
4166 { 127, 1074 },
4167 { 131, -1 },
4168 { 133, -1 },
4169 { 154, -1 },
4170 { 162, -1 },
4171 { 164, -1 },
4172 { 168, -1 },
4173 { 181, 1086 },
4174 { 188, -1 },
4175 { 193, -1 },
4176 { 196, -1 },
4177 { 205, -1 },
4178 { 211, -1 },
4179 { 218, -1 },
4180 { 225, -1 },
4181 { 234, 1062 },
4182 { 249, -1 },
4183 { 251, -1 },
4184 { 253, -1 },
4185 { 258, -1 },
4186 { 262, -1 },
4187 { 263, -1 },
4188 { 267, -1 },
4189 { 277, 1073 },
4190 { 278, 1098 },
4191 { 280, -1 },
4192 { 281, -1 },
4193 { 283, 1072 },
4194 { 284, -1 },
4195 { 291, -1 },
4196 { 304, -1 },
4197 { 315, -1 },
4198 { 316, -1 },
4199 { 320, 1075 },
4200 { 324, -1 },
4201 { 326, -1 },
4202 { 327, -1 },
4203 { 328, -1 },
4204 { 338, -1 },
4205 { 339, -1 },
4206 { 349, -1 },
4207 { 352, -1 },
4208 { 379, -1 },
4209 { 380, -1 },
4210 { 382, -1 },
4211 { 383, -1 },
4212 { 385, -1 },
4213 { 390, -1 },
4214 { 391, -1 },
4215 { 394, -1 },
4216 { 397, -1 },
4217 { 399, -1 },
4218 { 401, -1 },
4219 { 403, -1 },
4220 { 405, -1 },
4221 { 409, -1 },
4222 { 410, -1 },
4223 { 411, -1 },
4224 { 412, -1 },
4225 { 416, -1 },
4226 { 420, -1 },
4227 { 423, -1 },
4228 { 428, -1 },
4229 { 430, -1 },
4230 { 431, -1 },
4231};
4232
4233
4234static const HashTableValue JSWebGLRenderingContextPrototypeTableValues[] =
4235{
4236 { "constructor", static_cast<unsigned>(JSC::PropertyAttribute::DontEnum), NoIntrinsic, { (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsWebGLRenderingContextConstructor), (intptr_t) static_cast<PutPropertySlot::PutValueFunc>(0) } },
4237#if ENABLE(WEBGL)
4238 { "canvas", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::CustomAccessor | JSC::PropertyAttribute::DOMAttribute, NoIntrinsic, { (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsWebGLRenderingContext_canvas), (intptr_t) static_cast<PutPropertySlot::PutValueFunc>(nullptr) } },
4239#else
4240 { 0, 0, NoIntrinsic, { 0, 0 } },
4241#endif
4242#if ENABLE(WEBGL)
4243 { "drawingBufferWidth", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::CustomAccessor | JSC::PropertyAttribute::DOMAttribute, NoIntrinsic, { (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsWebGLRenderingContext_drawingBufferWidth), (intptr_t) static_cast<PutPropertySlot::PutValueFunc>(nullptr) } },
4244#else
4245 { 0, 0, NoIntrinsic, { 0, 0 } },
4246#endif
4247#if ENABLE(WEBGL)
4248 { "drawingBufferHeight", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::CustomAccessor | JSC::PropertyAttribute::DOMAttribute, NoIntrinsic, { (intptr_t)static_cast<PropertySlot::GetValueFunc>(jsWebGLRenderingContext_drawingBufferHeight), (intptr_t) static_cast<PutPropertySlot::PutValueFunc>(nullptr) } },
4249#else
4250 { 0, 0, NoIntrinsic, { 0, 0 } },
4251#endif
4252#if ENABLE(WEBGL)
4253 { "activeTexture", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_activeTexture), (intptr_t) (1) } },
4254#else
4255 { 0, 0, NoIntrinsic, { 0, 0 } },
4256#endif
4257#if ENABLE(WEBGL)
4258 { "attachShader", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_attachShader), (intptr_t) (2) } },
4259#else
4260 { 0, 0, NoIntrinsic, { 0, 0 } },
4261#endif
4262#if ENABLE(WEBGL)
4263 { "bindAttribLocation", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_bindAttribLocation), (intptr_t) (3) } },
4264#else
4265 { 0, 0, NoIntrinsic, { 0, 0 } },
4266#endif
4267#if ENABLE(WEBGL)
4268 { "bindBuffer", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_bindBuffer), (intptr_t) (2) } },
4269#else
4270 { 0, 0, NoIntrinsic, { 0, 0 } },
4271#endif
4272#if ENABLE(WEBGL)
4273 { "bindFramebuffer", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_bindFramebuffer), (intptr_t) (2) } },
4274#else
4275 { 0, 0, NoIntrinsic, { 0, 0 } },
4276#endif
4277#if ENABLE(WEBGL)
4278 { "bindRenderbuffer", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_bindRenderbuffer), (intptr_t) (2) } },
4279#else
4280 { 0, 0, NoIntrinsic, { 0, 0 } },
4281#endif
4282#if ENABLE(WEBGL)
4283 { "bindTexture", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_bindTexture), (intptr_t) (2) } },
4284#else
4285 { 0, 0, NoIntrinsic, { 0, 0 } },
4286#endif
4287#if ENABLE(WEBGL)
4288 { "blendColor", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_blendColor), (intptr_t) (4) } },
4289#else
4290 { 0, 0, NoIntrinsic, { 0, 0 } },
4291#endif
4292#if ENABLE(WEBGL)
4293 { "blendEquation", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_blendEquation), (intptr_t) (1) } },
4294#else
4295 { 0, 0, NoIntrinsic, { 0, 0 } },
4296#endif
4297#if ENABLE(WEBGL)
4298 { "blendEquationSeparate", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_blendEquationSeparate), (intptr_t) (2) } },
4299#else
4300 { 0, 0, NoIntrinsic, { 0, 0 } },
4301#endif
4302#if ENABLE(WEBGL)
4303 { "blendFunc", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_blendFunc), (intptr_t) (2) } },
4304#else
4305 { 0, 0, NoIntrinsic, { 0, 0 } },
4306#endif
4307#if ENABLE(WEBGL)
4308 { "blendFuncSeparate", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_blendFuncSeparate), (intptr_t) (4) } },
4309#else
4310 { 0, 0, NoIntrinsic, { 0, 0 } },
4311#endif
4312#if ENABLE(WEBGL)
4313 { "bufferData", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_bufferData), (intptr_t) (3) } },
4314#else
4315 { 0, 0, NoIntrinsic, { 0, 0 } },
4316#endif
4317#if ENABLE(WEBGL)
4318 { "bufferSubData", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_bufferSubData), (intptr_t) (3) } },
4319#else
4320 { 0, 0, NoIntrinsic, { 0, 0 } },
4321#endif
4322#if ENABLE(WEBGL)
4323 { "checkFramebufferStatus", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_checkFramebufferStatus), (intptr_t) (1) } },
4324#else
4325 { 0, 0, NoIntrinsic, { 0, 0 } },
4326#endif
4327#if ENABLE(WEBGL)
4328 { "clear", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_clear), (intptr_t) (1) } },
4329#else
4330 { 0, 0, NoIntrinsic, { 0, 0 } },
4331#endif
4332#if ENABLE(WEBGL)
4333 { "clearColor", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_clearColor), (intptr_t) (4) } },
4334#else
4335 { 0, 0, NoIntrinsic, { 0, 0 } },
4336#endif
4337#if ENABLE(WEBGL)
4338 { "clearDepth", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_clearDepth), (intptr_t) (1) } },
4339#else
4340 { 0, 0, NoIntrinsic, { 0, 0 } },
4341#endif
4342#if ENABLE(WEBGL)
4343 { "clearStencil", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_clearStencil), (intptr_t) (1) } },
4344#else
4345 { 0, 0, NoIntrinsic, { 0, 0 } },
4346#endif
4347#if ENABLE(WEBGL)
4348 { "colorMask", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_colorMask), (intptr_t) (4) } },
4349#else
4350 { 0, 0, NoIntrinsic, { 0, 0 } },
4351#endif
4352#if ENABLE(WEBGL)
4353 { "compileShader", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_compileShader), (intptr_t) (1) } },
4354#else
4355 { 0, 0, NoIntrinsic, { 0, 0 } },
4356#endif
4357#if ENABLE(WEBGL)
4358 { "texImage2D", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_texImage2D), (intptr_t) (6) } },
4359#else
4360 { 0, 0, NoIntrinsic, { 0, 0 } },
4361#endif
4362#if ENABLE(WEBGL)
4363 { "texSubImage2D", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_texSubImage2D), (intptr_t) (7) } },
4364#else
4365 { 0, 0, NoIntrinsic, { 0, 0 } },
4366#endif
4367#if ENABLE(WEBGL)
4368 { "compressedTexImage2D", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_compressedTexImage2D), (intptr_t) (7) } },
4369#else
4370 { 0, 0, NoIntrinsic, { 0, 0 } },
4371#endif
4372#if ENABLE(WEBGL)
4373 { "compressedTexSubImage2D", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_compressedTexSubImage2D), (intptr_t) (8) } },
4374#else
4375 { 0, 0, NoIntrinsic, { 0, 0 } },
4376#endif
4377#if ENABLE(WEBGL)
4378 { "copyTexImage2D", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_copyTexImage2D), (intptr_t) (8) } },
4379#else
4380 { 0, 0, NoIntrinsic, { 0, 0 } },
4381#endif
4382#if ENABLE(WEBGL)
4383 { "copyTexSubImage2D", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_copyTexSubImage2D), (intptr_t) (8) } },
4384#else
4385 { 0, 0, NoIntrinsic, { 0, 0 } },
4386#endif
4387#if ENABLE(WEBGL)
4388 { "createBuffer", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_createBuffer), (intptr_t) (0) } },
4389#else
4390 { 0, 0, NoIntrinsic, { 0, 0 } },
4391#endif
4392#if ENABLE(WEBGL)
4393 { "createFramebuffer", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_createFramebuffer), (intptr_t) (0) } },
4394#else
4395 { 0, 0, NoIntrinsic, { 0, 0 } },
4396#endif
4397#if ENABLE(WEBGL)
4398 { "createProgram", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_createProgram), (intptr_t) (0) } },
4399#else
4400 { 0, 0, NoIntrinsic, { 0, 0 } },
4401#endif
4402#if ENABLE(WEBGL)
4403 { "createRenderbuffer", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_createRenderbuffer), (intptr_t) (0) } },
4404#else
4405 { 0, 0, NoIntrinsic, { 0, 0 } },
4406#endif
4407#if ENABLE(WEBGL)
4408 { "createShader", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_createShader), (intptr_t) (1) } },
4409#else
4410 { 0, 0, NoIntrinsic, { 0, 0 } },
4411#endif
4412#if ENABLE(WEBGL)
4413 { "createTexture", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_createTexture), (intptr_t) (0) } },
4414#else
4415 { 0, 0, NoIntrinsic, { 0, 0 } },
4416#endif
4417#if ENABLE(WEBGL)
4418 { "cullFace", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_cullFace), (intptr_t) (1) } },
4419#else
4420 { 0, 0, NoIntrinsic, { 0, 0 } },
4421#endif
4422#if ENABLE(WEBGL)
4423 { "deleteBuffer", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_deleteBuffer), (intptr_t) (1) } },
4424#else
4425 { 0, 0, NoIntrinsic, { 0, 0 } },
4426#endif
4427#if ENABLE(WEBGL)
4428 { "deleteFramebuffer", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_deleteFramebuffer), (intptr_t) (1) } },
4429#else
4430 { 0, 0, NoIntrinsic, { 0, 0 } },
4431#endif
4432#if ENABLE(WEBGL)
4433 { "deleteProgram", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_deleteProgram), (intptr_t) (1) } },
4434#else
4435 { 0, 0, NoIntrinsic, { 0, 0 } },
4436#endif
4437#if ENABLE(WEBGL)
4438 { "deleteRenderbuffer", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_deleteRenderbuffer), (intptr_t) (1) } },
4439#else
4440 { 0, 0, NoIntrinsic, { 0, 0 } },
4441#endif
4442#if ENABLE(WEBGL)
4443 { "deleteShader", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_deleteShader), (intptr_t) (1) } },
4444#else
4445 { 0, 0, NoIntrinsic, { 0, 0 } },
4446#endif
4447#if ENABLE(WEBGL)
4448 { "deleteTexture", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_deleteTexture), (intptr_t) (1) } },
4449#else
4450 { 0, 0, NoIntrinsic, { 0, 0 } },
4451#endif
4452#if ENABLE(WEBGL)
4453 { "depthFunc", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_depthFunc), (intptr_t) (1) } },
4454#else
4455 { 0, 0, NoIntrinsic, { 0, 0 } },
4456#endif
4457#if ENABLE(WEBGL)
4458 { "depthMask", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_depthMask), (intptr_t) (1) } },
4459#else
4460 { 0, 0, NoIntrinsic, { 0, 0 } },
4461#endif
4462#if ENABLE(WEBGL)
4463 { "depthRange", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_depthRange), (intptr_t) (2) } },
4464#else
4465 { 0, 0, NoIntrinsic, { 0, 0 } },
4466#endif
4467#if ENABLE(WEBGL)
4468 { "detachShader", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_detachShader), (intptr_t) (2) } },
4469#else
4470 { 0, 0, NoIntrinsic, { 0, 0 } },
4471#endif
4472#if ENABLE(WEBGL)
4473 { "disable", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_disable), (intptr_t) (1) } },
4474#else
4475 { 0, 0, NoIntrinsic, { 0, 0 } },
4476#endif
4477#if ENABLE(WEBGL)
4478 { "disableVertexAttribArray", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_disableVertexAttribArray), (intptr_t) (1) } },
4479#else
4480 { 0, 0, NoIntrinsic, { 0, 0 } },
4481#endif
4482#if ENABLE(WEBGL)
4483 { "drawArrays", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_drawArrays), (intptr_t) (3) } },
4484#else
4485 { 0, 0, NoIntrinsic, { 0, 0 } },
4486#endif
4487#if ENABLE(WEBGL)
4488 { "drawElements", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_drawElements), (intptr_t) (4) } },
4489#else
4490 { 0, 0, NoIntrinsic, { 0, 0 } },
4491#endif
4492#if ENABLE(WEBGL)
4493 { "enable", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_enable), (intptr_t) (1) } },
4494#else
4495 { 0, 0, NoIntrinsic, { 0, 0 } },
4496#endif
4497#if ENABLE(WEBGL)
4498 { "enableVertexAttribArray", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_enableVertexAttribArray), (intptr_t) (1) } },
4499#else
4500 { 0, 0, NoIntrinsic, { 0, 0 } },
4501#endif
4502#if ENABLE(WEBGL)
4503 { "finish", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_finish), (intptr_t) (0) } },
4504#else
4505 { 0, 0, NoIntrinsic, { 0, 0 } },
4506#endif
4507#if ENABLE(WEBGL)
4508 { "flush", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_flush), (intptr_t) (0) } },
4509#else
4510 { 0, 0, NoIntrinsic, { 0, 0 } },
4511#endif
4512#if ENABLE(WEBGL)
4513 { "framebufferRenderbuffer", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_framebufferRenderbuffer), (intptr_t) (4) } },
4514#else
4515 { 0, 0, NoIntrinsic, { 0, 0 } },
4516#endif
4517#if ENABLE(WEBGL)
4518 { "framebufferTexture2D", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_framebufferTexture2D), (intptr_t) (5) } },
4519#else
4520 { 0, 0, NoIntrinsic, { 0, 0 } },
4521#endif
4522#if ENABLE(WEBGL)
4523 { "frontFace", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_frontFace), (intptr_t) (1) } },
4524#else
4525 { 0, 0, NoIntrinsic, { 0, 0 } },
4526#endif
4527#if ENABLE(WEBGL)
4528 { "generateMipmap", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_generateMipmap), (intptr_t) (1) } },
4529#else
4530 { 0, 0, NoIntrinsic, { 0, 0 } },
4531#endif
4532#if ENABLE(WEBGL)
4533 { "getActiveAttrib", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_getActiveAttrib), (intptr_t) (2) } },
4534#else
4535 { 0, 0, NoIntrinsic, { 0, 0 } },
4536#endif
4537#if ENABLE(WEBGL)
4538 { "getActiveUniform", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_getActiveUniform), (intptr_t) (2) } },
4539#else
4540 { 0, 0, NoIntrinsic, { 0, 0 } },
4541#endif
4542#if ENABLE(WEBGL)
4543 { "getAttachedShaders", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_getAttachedShaders), (intptr_t) (1) } },
4544#else
4545 { 0, 0, NoIntrinsic, { 0, 0 } },
4546#endif
4547#if ENABLE(WEBGL)
4548 { "getAttribLocation", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_getAttribLocation), (intptr_t) (2) } },
4549#else
4550 { 0, 0, NoIntrinsic, { 0, 0 } },
4551#endif
4552#if ENABLE(WEBGL)
4553 { "getBufferParameter", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_getBufferParameter), (intptr_t) (2) } },
4554#else
4555 { 0, 0, NoIntrinsic, { 0, 0 } },
4556#endif
4557#if ENABLE(WEBGL)
4558 { "getContextAttributes", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_getContextAttributes), (intptr_t) (0) } },
4559#else
4560 { 0, 0, NoIntrinsic, { 0, 0 } },
4561#endif
4562#if ENABLE(WEBGL)
4563 { "getError", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_getError), (intptr_t) (0) } },
4564#else
4565 { 0, 0, NoIntrinsic, { 0, 0 } },
4566#endif
4567#if ENABLE(WEBGL)
4568 { "getSupportedExtensions", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_getSupportedExtensions), (intptr_t) (0) } },
4569#else
4570 { 0, 0, NoIntrinsic, { 0, 0 } },
4571#endif
4572#if ENABLE(WEBGL)
4573 { "getExtension", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_getExtension), (intptr_t) (1) } },
4574#else
4575 { 0, 0, NoIntrinsic, { 0, 0 } },
4576#endif
4577#if ENABLE(WEBGL)
4578 { "getFramebufferAttachmentParameter", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_getFramebufferAttachmentParameter), (intptr_t) (3) } },
4579#else
4580 { 0, 0, NoIntrinsic, { 0, 0 } },
4581#endif
4582#if ENABLE(WEBGL)
4583 { "getParameter", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_getParameter), (intptr_t) (1) } },
4584#else
4585 { 0, 0, NoIntrinsic, { 0, 0 } },
4586#endif
4587#if ENABLE(WEBGL)
4588 { "getProgramParameter", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_getProgramParameter), (intptr_t) (2) } },
4589#else
4590 { 0, 0, NoIntrinsic, { 0, 0 } },
4591#endif
4592#if ENABLE(WEBGL)
4593 { "getProgramInfoLog", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_getProgramInfoLog), (intptr_t) (1) } },
4594#else
4595 { 0, 0, NoIntrinsic, { 0, 0 } },
4596#endif
4597#if ENABLE(WEBGL)
4598 { "getRenderbufferParameter", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_getRenderbufferParameter), (intptr_t) (2) } },
4599#else
4600 { 0, 0, NoIntrinsic, { 0, 0 } },
4601#endif
4602#if ENABLE(WEBGL)
4603 { "getShaderParameter", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_getShaderParameter), (intptr_t) (2) } },
4604#else
4605 { 0, 0, NoIntrinsic, { 0, 0 } },
4606#endif
4607#if ENABLE(WEBGL)
4608 { "getShaderInfoLog", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_getShaderInfoLog), (intptr_t) (1) } },
4609#else
4610 { 0, 0, NoIntrinsic, { 0, 0 } },
4611#endif
4612#if ENABLE(WEBGL)
4613 { "getShaderPrecisionFormat", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_getShaderPrecisionFormat), (intptr_t) (2) } },
4614#else
4615 { 0, 0, NoIntrinsic, { 0, 0 } },
4616#endif
4617#if ENABLE(WEBGL)
4618 { "getShaderSource", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_getShaderSource), (intptr_t) (1) } },
4619#else
4620 { 0, 0, NoIntrinsic, { 0, 0 } },
4621#endif
4622#if ENABLE(WEBGL)
4623 { "getTexParameter", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_getTexParameter), (intptr_t) (2) } },
4624#else
4625 { 0, 0, NoIntrinsic, { 0, 0 } },
4626#endif
4627#if ENABLE(WEBGL)
4628 { "getUniform", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_getUniform), (intptr_t) (2) } },
4629#else
4630 { 0, 0, NoIntrinsic, { 0, 0 } },
4631#endif
4632#if ENABLE(WEBGL)
4633 { "getUniformLocation", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_getUniformLocation), (intptr_t) (2) } },
4634#else
4635 { 0, 0, NoIntrinsic, { 0, 0 } },
4636#endif
4637#if ENABLE(WEBGL)
4638 { "getVertexAttrib", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_getVertexAttrib), (intptr_t) (2) } },
4639#else
4640 { 0, 0, NoIntrinsic, { 0, 0 } },
4641#endif
4642#if ENABLE(WEBGL)
4643 { "getVertexAttribOffset", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_getVertexAttribOffset), (intptr_t) (2) } },
4644#else
4645 { 0, 0, NoIntrinsic, { 0, 0 } },
4646#endif
4647#if ENABLE(WEBGL)
4648 { "hint", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_hint), (intptr_t) (2) } },
4649#else
4650 { 0, 0, NoIntrinsic, { 0, 0 } },
4651#endif
4652#if ENABLE(WEBGL)
4653 { "isBuffer", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_isBuffer), (intptr_t) (1) } },
4654#else
4655 { 0, 0, NoIntrinsic, { 0, 0 } },
4656#endif
4657#if ENABLE(WEBGL)
4658 { "isContextLost", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_isContextLost), (intptr_t) (0) } },
4659#else
4660 { 0, 0, NoIntrinsic, { 0, 0 } },
4661#endif
4662#if ENABLE(WEBGL)
4663 { "isEnabled", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_isEnabled), (intptr_t) (1) } },
4664#else
4665 { 0, 0, NoIntrinsic, { 0, 0 } },
4666#endif
4667#if ENABLE(WEBGL)
4668 { "isFramebuffer", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_isFramebuffer), (intptr_t) (1) } },
4669#else
4670 { 0, 0, NoIntrinsic, { 0, 0 } },
4671#endif
4672#if ENABLE(WEBGL)
4673 { "isProgram", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_isProgram), (intptr_t) (1) } },
4674#else
4675 { 0, 0, NoIntrinsic, { 0, 0 } },
4676#endif
4677#if ENABLE(WEBGL)
4678 { "isRenderbuffer", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_isRenderbuffer), (intptr_t) (1) } },
4679#else
4680 { 0, 0, NoIntrinsic, { 0, 0 } },
4681#endif
4682#if ENABLE(WEBGL)
4683 { "isShader", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_isShader), (intptr_t) (1) } },
4684#else
4685 { 0, 0, NoIntrinsic, { 0, 0 } },
4686#endif
4687#if ENABLE(WEBGL)
4688 { "isTexture", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_isTexture), (intptr_t) (1) } },
4689#else
4690 { 0, 0, NoIntrinsic, { 0, 0 } },
4691#endif
4692#if ENABLE(WEBGL)
4693 { "lineWidth", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_lineWidth), (intptr_t) (1) } },
4694#else
4695 { 0, 0, NoIntrinsic, { 0, 0 } },
4696#endif
4697#if ENABLE(WEBGL)
4698 { "linkProgram", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_linkProgram), (intptr_t) (1) } },
4699#else
4700 { 0, 0, NoIntrinsic, { 0, 0 } },
4701#endif
4702#if ENABLE(WEBGL) && ENABLE(WEBXR)
4703 { "makeXRCompatible", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_makeXRCompatible), (intptr_t) (0) } },
4704#else
4705 { 0, 0, NoIntrinsic, { 0, 0 } },
4706#endif
4707#if ENABLE(WEBGL)
4708 { "pixelStorei", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_pixelStorei), (intptr_t) (2) } },
4709#else
4710 { 0, 0, NoIntrinsic, { 0, 0 } },
4711#endif
4712#if ENABLE(WEBGL)
4713 { "polygonOffset", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_polygonOffset), (intptr_t) (2) } },
4714#else
4715 { 0, 0, NoIntrinsic, { 0, 0 } },
4716#endif
4717#if ENABLE(WEBGL)
4718 { "readPixels", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_readPixels), (intptr_t) (7) } },
4719#else
4720 { 0, 0, NoIntrinsic, { 0, 0 } },
4721#endif
4722#if ENABLE(WEBGL)
4723 { "renderbufferStorage", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_renderbufferStorage), (intptr_t) (4) } },
4724#else
4725 { 0, 0, NoIntrinsic, { 0, 0 } },
4726#endif
4727#if ENABLE(WEBGL)
4728 { "sampleCoverage", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_sampleCoverage), (intptr_t) (2) } },
4729#else
4730 { 0, 0, NoIntrinsic, { 0, 0 } },
4731#endif
4732#if ENABLE(WEBGL)
4733 { "scissor", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_scissor), (intptr_t) (4) } },
4734#else
4735 { 0, 0, NoIntrinsic, { 0, 0 } },
4736#endif
4737#if ENABLE(WEBGL)
4738 { "shaderSource", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_shaderSource), (intptr_t) (2) } },
4739#else
4740 { 0, 0, NoIntrinsic, { 0, 0 } },
4741#endif
4742#if ENABLE(WEBGL)
4743 { "stencilFunc", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_stencilFunc), (intptr_t) (3) } },
4744#else
4745 { 0, 0, NoIntrinsic, { 0, 0 } },
4746#endif
4747#if ENABLE(WEBGL)
4748 { "stencilFuncSeparate", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_stencilFuncSeparate), (intptr_t) (4) } },
4749#else
4750 { 0, 0, NoIntrinsic, { 0, 0 } },
4751#endif
4752#if ENABLE(WEBGL)
4753 { "stencilMask", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_stencilMask), (intptr_t) (1) } },
4754#else
4755 { 0, 0, NoIntrinsic, { 0, 0 } },
4756#endif
4757#if ENABLE(WEBGL)
4758 { "stencilMaskSeparate", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_stencilMaskSeparate), (intptr_t) (2) } },
4759#else
4760 { 0, 0, NoIntrinsic, { 0, 0 } },
4761#endif
4762#if ENABLE(WEBGL)
4763 { "stencilOp", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_stencilOp), (intptr_t) (3) } },
4764#else
4765 { 0, 0, NoIntrinsic, { 0, 0 } },
4766#endif
4767#if ENABLE(WEBGL)
4768 { "stencilOpSeparate", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_stencilOpSeparate), (intptr_t) (4) } },
4769#else
4770 { 0, 0, NoIntrinsic, { 0, 0 } },
4771#endif
4772#if ENABLE(WEBGL)
4773 { "texParameterf", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_texParameterf), (intptr_t) (3) } },
4774#else
4775 { 0, 0, NoIntrinsic, { 0, 0 } },
4776#endif
4777#if ENABLE(WEBGL)
4778 { "texParameteri", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_texParameteri), (intptr_t) (3) } },
4779#else
4780 { 0, 0, NoIntrinsic, { 0, 0 } },
4781#endif
4782#if ENABLE(WEBGL)
4783 { "uniform1f", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_uniform1f), (intptr_t) (2) } },
4784#else
4785 { 0, 0, NoIntrinsic, { 0, 0 } },
4786#endif
4787#if ENABLE(WEBGL)
4788 { "uniform2f", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_uniform2f), (intptr_t) (3) } },
4789#else
4790 { 0, 0, NoIntrinsic, { 0, 0 } },
4791#endif
4792#if ENABLE(WEBGL)
4793 { "uniform3f", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_uniform3f), (intptr_t) (4) } },
4794#else
4795 { 0, 0, NoIntrinsic, { 0, 0 } },
4796#endif
4797#if ENABLE(WEBGL)
4798 { "uniform4f", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_uniform4f), (intptr_t) (5) } },
4799#else
4800 { 0, 0, NoIntrinsic, { 0, 0 } },
4801#endif
4802#if ENABLE(WEBGL)
4803 { "uniform1i", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_uniform1i), (intptr_t) (2) } },
4804#else
4805 { 0, 0, NoIntrinsic, { 0, 0 } },
4806#endif
4807#if ENABLE(WEBGL)
4808 { "uniform2i", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_uniform2i), (intptr_t) (3) } },
4809#else
4810 { 0, 0, NoIntrinsic, { 0, 0 } },
4811#endif
4812#if ENABLE(WEBGL)
4813 { "uniform3i", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_uniform3i), (intptr_t) (4) } },
4814#else
4815 { 0, 0, NoIntrinsic, { 0, 0 } },
4816#endif
4817#if ENABLE(WEBGL)
4818 { "uniform4i", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_uniform4i), (intptr_t) (5) } },
4819#else
4820 { 0, 0, NoIntrinsic, { 0, 0 } },
4821#endif
4822#if ENABLE(WEBGL)
4823 { "uniform1fv", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_uniform1fv), (intptr_t) (2) } },
4824#else
4825 { 0, 0, NoIntrinsic, { 0, 0 } },
4826#endif
4827#if ENABLE(WEBGL)
4828 { "uniform2fv", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_uniform2fv), (intptr_t) (2) } },
4829#else
4830 { 0, 0, NoIntrinsic, { 0, 0 } },
4831#endif
4832#if ENABLE(WEBGL)
4833 { "uniform3fv", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_uniform3fv), (intptr_t) (2) } },
4834#else
4835 { 0, 0, NoIntrinsic, { 0, 0 } },
4836#endif
4837#if ENABLE(WEBGL)
4838 { "uniform4fv", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_uniform4fv), (intptr_t) (2) } },
4839#else
4840 { 0, 0, NoIntrinsic, { 0, 0 } },
4841#endif
4842#if ENABLE(WEBGL)
4843 { "uniform1iv", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_uniform1iv), (intptr_t) (2) } },
4844#else
4845 { 0, 0, NoIntrinsic, { 0, 0 } },
4846#endif
4847#if ENABLE(WEBGL)
4848 { "uniform2iv", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_uniform2iv), (intptr_t) (2) } },
4849#else
4850 { 0, 0, NoIntrinsic, { 0, 0 } },
4851#endif
4852#if ENABLE(WEBGL)
4853 { "uniform3iv", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_uniform3iv), (intptr_t) (2) } },
4854#else
4855 { 0, 0, NoIntrinsic, { 0, 0 } },
4856#endif
4857#if ENABLE(WEBGL)
4858 { "uniform4iv", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_uniform4iv), (intptr_t) (2) } },
4859#else
4860 { 0, 0, NoIntrinsic, { 0, 0 } },
4861#endif
4862#if ENABLE(WEBGL)
4863 { "uniformMatrix2fv", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_uniformMatrix2fv), (intptr_t) (3) } },
4864#else
4865 { 0, 0, NoIntrinsic, { 0, 0 } },
4866#endif
4867#if ENABLE(WEBGL)
4868 { "uniformMatrix3fv", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_uniformMatrix3fv), (intptr_t) (3) } },
4869#else
4870 { 0, 0, NoIntrinsic, { 0, 0 } },
4871#endif
4872#if ENABLE(WEBGL)
4873 { "uniformMatrix4fv", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_uniformMatrix4fv), (intptr_t) (3) } },
4874#else
4875 { 0, 0, NoIntrinsic, { 0, 0 } },
4876#endif
4877#if ENABLE(WEBGL)
4878 { "useProgram", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_useProgram), (intptr_t) (1) } },
4879#else
4880 { 0, 0, NoIntrinsic, { 0, 0 } },
4881#endif
4882#if ENABLE(WEBGL)
4883 { "validateProgram", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_validateProgram), (intptr_t) (1) } },
4884#else
4885 { 0, 0, NoIntrinsic, { 0, 0 } },
4886#endif
4887#if ENABLE(WEBGL)
4888 { "vertexAttrib1f", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_vertexAttrib1f), (intptr_t) (2) } },
4889#else
4890 { 0, 0, NoIntrinsic, { 0, 0 } },
4891#endif
4892#if ENABLE(WEBGL)
4893 { "vertexAttrib2f", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_vertexAttrib2f), (intptr_t) (3) } },
4894#else
4895 { 0, 0, NoIntrinsic, { 0, 0 } },
4896#endif
4897#if ENABLE(WEBGL)
4898 { "vertexAttrib3f", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_vertexAttrib3f), (intptr_t) (4) } },
4899#else
4900 { 0, 0, NoIntrinsic, { 0, 0 } },
4901#endif
4902#if ENABLE(WEBGL)
4903 { "vertexAttrib4f", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_vertexAttrib4f), (intptr_t) (5) } },
4904#else
4905 { 0, 0, NoIntrinsic, { 0, 0 } },
4906#endif
4907#if ENABLE(WEBGL)
4908 { "vertexAttrib1fv", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_vertexAttrib1fv), (intptr_t) (2) } },
4909#else
4910 { 0, 0, NoIntrinsic, { 0, 0 } },
4911#endif
4912#if ENABLE(WEBGL)
4913 { "vertexAttrib2fv", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_vertexAttrib2fv), (intptr_t) (2) } },
4914#else
4915 { 0, 0, NoIntrinsic, { 0, 0 } },
4916#endif
4917#if ENABLE(WEBGL)
4918 { "vertexAttrib3fv", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_vertexAttrib3fv), (intptr_t) (2) } },
4919#else
4920 { 0, 0, NoIntrinsic, { 0, 0 } },
4921#endif
4922#if ENABLE(WEBGL)
4923 { "vertexAttrib4fv", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_vertexAttrib4fv), (intptr_t) (2) } },
4924#else
4925 { 0, 0, NoIntrinsic, { 0, 0 } },
4926#endif
4927#if ENABLE(WEBGL)
4928 { "vertexAttribPointer", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_vertexAttribPointer), (intptr_t) (6) } },
4929#else
4930 { 0, 0, NoIntrinsic, { 0, 0 } },
4931#endif
4932#if ENABLE(WEBGL)
4933 { "viewport", static_cast<unsigned>(JSC::PropertyAttribute::Function), NoIntrinsic, { (intptr_t)static_cast<RawNativeFunction>(jsWebGLRenderingContextPrototypeFunction_viewport), (intptr_t) (4) } },
4934#else
4935 { 0, 0, NoIntrinsic, { 0, 0 } },
4936#endif
4937#if ENABLE(WEBGL)
4938 { "DEPTH_BUFFER_BIT", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x00000100) } },
4939#else
4940 { 0, 0, NoIntrinsic, { 0, 0 } },
4941#endif
4942#if ENABLE(WEBGL)
4943 { "STENCIL_BUFFER_BIT", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x00000400) } },
4944#else
4945 { 0, 0, NoIntrinsic, { 0, 0 } },
4946#endif
4947#if ENABLE(WEBGL)
4948 { "COLOR_BUFFER_BIT", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x00004000) } },
4949#else
4950 { 0, 0, NoIntrinsic, { 0, 0 } },
4951#endif
4952#if ENABLE(WEBGL)
4953 { "POINTS", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0000) } },
4954#else
4955 { 0, 0, NoIntrinsic, { 0, 0 } },
4956#endif
4957#if ENABLE(WEBGL)
4958 { "LINES", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0001) } },
4959#else
4960 { 0, 0, NoIntrinsic, { 0, 0 } },
4961#endif
4962#if ENABLE(WEBGL)
4963 { "LINE_LOOP", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0002) } },
4964#else
4965 { 0, 0, NoIntrinsic, { 0, 0 } },
4966#endif
4967#if ENABLE(WEBGL)
4968 { "LINE_STRIP", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0003) } },
4969#else
4970 { 0, 0, NoIntrinsic, { 0, 0 } },
4971#endif
4972#if ENABLE(WEBGL)
4973 { "TRIANGLES", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0004) } },
4974#else
4975 { 0, 0, NoIntrinsic, { 0, 0 } },
4976#endif
4977#if ENABLE(WEBGL)
4978 { "TRIANGLE_STRIP", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0005) } },
4979#else
4980 { 0, 0, NoIntrinsic, { 0, 0 } },
4981#endif
4982#if ENABLE(WEBGL)
4983 { "TRIANGLE_FAN", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0006) } },
4984#else
4985 { 0, 0, NoIntrinsic, { 0, 0 } },
4986#endif
4987#if ENABLE(WEBGL)
4988 { "ZERO", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0) } },
4989#else
4990 { 0, 0, NoIntrinsic, { 0, 0 } },
4991#endif
4992#if ENABLE(WEBGL)
4993 { "ONE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(1) } },
4994#else
4995 { 0, 0, NoIntrinsic, { 0, 0 } },
4996#endif
4997#if ENABLE(WEBGL)
4998 { "SRC_COLOR", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0300) } },
4999#else
5000 { 0, 0, NoIntrinsic, { 0, 0 } },
5001#endif
5002#if ENABLE(WEBGL)
5003 { "ONE_MINUS_SRC_COLOR", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0301) } },
5004#else
5005 { 0, 0, NoIntrinsic, { 0, 0 } },
5006#endif
5007#if ENABLE(WEBGL)
5008 { "SRC_ALPHA", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0302) } },
5009#else
5010 { 0, 0, NoIntrinsic, { 0, 0 } },
5011#endif
5012#if ENABLE(WEBGL)
5013 { "ONE_MINUS_SRC_ALPHA", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0303) } },
5014#else
5015 { 0, 0, NoIntrinsic, { 0, 0 } },
5016#endif
5017#if ENABLE(WEBGL)
5018 { "DST_ALPHA", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0304) } },
5019#else
5020 { 0, 0, NoIntrinsic, { 0, 0 } },
5021#endif
5022#if ENABLE(WEBGL)
5023 { "ONE_MINUS_DST_ALPHA", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0305) } },
5024#else
5025 { 0, 0, NoIntrinsic, { 0, 0 } },
5026#endif
5027#if ENABLE(WEBGL)
5028 { "DST_COLOR", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0306) } },
5029#else
5030 { 0, 0, NoIntrinsic, { 0, 0 } },
5031#endif
5032#if ENABLE(WEBGL)
5033 { "ONE_MINUS_DST_COLOR", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0307) } },
5034#else
5035 { 0, 0, NoIntrinsic, { 0, 0 } },
5036#endif
5037#if ENABLE(WEBGL)
5038 { "SRC_ALPHA_SATURATE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0308) } },
5039#else
5040 { 0, 0, NoIntrinsic, { 0, 0 } },
5041#endif
5042#if ENABLE(WEBGL)
5043 { "FUNC_ADD", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8006) } },
5044#else
5045 { 0, 0, NoIntrinsic, { 0, 0 } },
5046#endif
5047#if ENABLE(WEBGL)
5048 { "BLEND_EQUATION", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8009) } },
5049#else
5050 { 0, 0, NoIntrinsic, { 0, 0 } },
5051#endif
5052#if ENABLE(WEBGL)
5053 { "BLEND_EQUATION_RGB", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8009) } },
5054#else
5055 { 0, 0, NoIntrinsic, { 0, 0 } },
5056#endif
5057#if ENABLE(WEBGL)
5058 { "BLEND_EQUATION_ALPHA", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x883D) } },
5059#else
5060 { 0, 0, NoIntrinsic, { 0, 0 } },
5061#endif
5062#if ENABLE(WEBGL)
5063 { "FUNC_SUBTRACT", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x800A) } },
5064#else
5065 { 0, 0, NoIntrinsic, { 0, 0 } },
5066#endif
5067#if ENABLE(WEBGL)
5068 { "FUNC_REVERSE_SUBTRACT", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x800B) } },
5069#else
5070 { 0, 0, NoIntrinsic, { 0, 0 } },
5071#endif
5072#if ENABLE(WEBGL)
5073 { "BLEND_DST_RGB", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x80C8) } },
5074#else
5075 { 0, 0, NoIntrinsic, { 0, 0 } },
5076#endif
5077#if ENABLE(WEBGL)
5078 { "BLEND_SRC_RGB", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x80C9) } },
5079#else
5080 { 0, 0, NoIntrinsic, { 0, 0 } },
5081#endif
5082#if ENABLE(WEBGL)
5083 { "BLEND_DST_ALPHA", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x80CA) } },
5084#else
5085 { 0, 0, NoIntrinsic, { 0, 0 } },
5086#endif
5087#if ENABLE(WEBGL)
5088 { "BLEND_SRC_ALPHA", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x80CB) } },
5089#else
5090 { 0, 0, NoIntrinsic, { 0, 0 } },
5091#endif
5092#if ENABLE(WEBGL)
5093 { "CONSTANT_COLOR", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8001) } },
5094#else
5095 { 0, 0, NoIntrinsic, { 0, 0 } },
5096#endif
5097#if ENABLE(WEBGL)
5098 { "ONE_MINUS_CONSTANT_COLOR", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8002) } },
5099#else
5100 { 0, 0, NoIntrinsic, { 0, 0 } },
5101#endif
5102#if ENABLE(WEBGL)
5103 { "CONSTANT_ALPHA", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8003) } },
5104#else
5105 { 0, 0, NoIntrinsic, { 0, 0 } },
5106#endif
5107#if ENABLE(WEBGL)
5108 { "ONE_MINUS_CONSTANT_ALPHA", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8004) } },
5109#else
5110 { 0, 0, NoIntrinsic, { 0, 0 } },
5111#endif
5112#if ENABLE(WEBGL)
5113 { "BLEND_COLOR", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8005) } },
5114#else
5115 { 0, 0, NoIntrinsic, { 0, 0 } },
5116#endif
5117#if ENABLE(WEBGL)
5118 { "ARRAY_BUFFER", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8892) } },
5119#else
5120 { 0, 0, NoIntrinsic, { 0, 0 } },
5121#endif
5122#if ENABLE(WEBGL)
5123 { "ELEMENT_ARRAY_BUFFER", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8893) } },
5124#else
5125 { 0, 0, NoIntrinsic, { 0, 0 } },
5126#endif
5127#if ENABLE(WEBGL)
5128 { "ARRAY_BUFFER_BINDING", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8894) } },
5129#else
5130 { 0, 0, NoIntrinsic, { 0, 0 } },
5131#endif
5132#if ENABLE(WEBGL)
5133 { "ELEMENT_ARRAY_BUFFER_BINDING", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8895) } },
5134#else
5135 { 0, 0, NoIntrinsic, { 0, 0 } },
5136#endif
5137#if ENABLE(WEBGL)
5138 { "STREAM_DRAW", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x88E0) } },
5139#else
5140 { 0, 0, NoIntrinsic, { 0, 0 } },
5141#endif
5142#if ENABLE(WEBGL)
5143 { "STATIC_DRAW", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x88E4) } },
5144#else
5145 { 0, 0, NoIntrinsic, { 0, 0 } },
5146#endif
5147#if ENABLE(WEBGL)
5148 { "DYNAMIC_DRAW", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x88E8) } },
5149#else
5150 { 0, 0, NoIntrinsic, { 0, 0 } },
5151#endif
5152#if ENABLE(WEBGL)
5153 { "BUFFER_SIZE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8764) } },
5154#else
5155 { 0, 0, NoIntrinsic, { 0, 0 } },
5156#endif
5157#if ENABLE(WEBGL)
5158 { "BUFFER_USAGE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8765) } },
5159#else
5160 { 0, 0, NoIntrinsic, { 0, 0 } },
5161#endif
5162#if ENABLE(WEBGL)
5163 { "CURRENT_VERTEX_ATTRIB", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8626) } },
5164#else
5165 { 0, 0, NoIntrinsic, { 0, 0 } },
5166#endif
5167#if ENABLE(WEBGL)
5168 { "FRONT", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0404) } },
5169#else
5170 { 0, 0, NoIntrinsic, { 0, 0 } },
5171#endif
5172#if ENABLE(WEBGL)
5173 { "BACK", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0405) } },
5174#else
5175 { 0, 0, NoIntrinsic, { 0, 0 } },
5176#endif
5177#if ENABLE(WEBGL)
5178 { "FRONT_AND_BACK", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0408) } },
5179#else
5180 { 0, 0, NoIntrinsic, { 0, 0 } },
5181#endif
5182#if ENABLE(WEBGL)
5183 { "TEXTURE_2D", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0DE1) } },
5184#else
5185 { 0, 0, NoIntrinsic, { 0, 0 } },
5186#endif
5187#if ENABLE(WEBGL)
5188 { "CULL_FACE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0B44) } },
5189#else
5190 { 0, 0, NoIntrinsic, { 0, 0 } },
5191#endif
5192#if ENABLE(WEBGL)
5193 { "BLEND", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0BE2) } },
5194#else
5195 { 0, 0, NoIntrinsic, { 0, 0 } },
5196#endif
5197#if ENABLE(WEBGL)
5198 { "DITHER", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0BD0) } },
5199#else
5200 { 0, 0, NoIntrinsic, { 0, 0 } },
5201#endif
5202#if ENABLE(WEBGL)
5203 { "STENCIL_TEST", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0B90) } },
5204#else
5205 { 0, 0, NoIntrinsic, { 0, 0 } },
5206#endif
5207#if ENABLE(WEBGL)
5208 { "DEPTH_TEST", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0B71) } },
5209#else
5210 { 0, 0, NoIntrinsic, { 0, 0 } },
5211#endif
5212#if ENABLE(WEBGL)
5213 { "SCISSOR_TEST", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0C11) } },
5214#else
5215 { 0, 0, NoIntrinsic, { 0, 0 } },
5216#endif
5217#if ENABLE(WEBGL)
5218 { "POLYGON_OFFSET_FILL", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8037) } },
5219#else
5220 { 0, 0, NoIntrinsic, { 0, 0 } },
5221#endif
5222#if ENABLE(WEBGL)
5223 { "SAMPLE_ALPHA_TO_COVERAGE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x809E) } },
5224#else
5225 { 0, 0, NoIntrinsic, { 0, 0 } },
5226#endif
5227#if ENABLE(WEBGL)
5228 { "SAMPLE_COVERAGE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x80A0) } },
5229#else
5230 { 0, 0, NoIntrinsic, { 0, 0 } },
5231#endif
5232#if ENABLE(WEBGL)
5233 { "NO_ERROR", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0) } },
5234#else
5235 { 0, 0, NoIntrinsic, { 0, 0 } },
5236#endif
5237#if ENABLE(WEBGL)
5238 { "INVALID_ENUM", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0500) } },
5239#else
5240 { 0, 0, NoIntrinsic, { 0, 0 } },
5241#endif
5242#if ENABLE(WEBGL)
5243 { "INVALID_VALUE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0501) } },
5244#else
5245 { 0, 0, NoIntrinsic, { 0, 0 } },
5246#endif
5247#if ENABLE(WEBGL)
5248 { "INVALID_OPERATION", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0502) } },
5249#else
5250 { 0, 0, NoIntrinsic, { 0, 0 } },
5251#endif
5252#if ENABLE(WEBGL)
5253 { "OUT_OF_MEMORY", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0505) } },
5254#else
5255 { 0, 0, NoIntrinsic, { 0, 0 } },
5256#endif
5257#if ENABLE(WEBGL)
5258 { "CW", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0900) } },
5259#else
5260 { 0, 0, NoIntrinsic, { 0, 0 } },
5261#endif
5262#if ENABLE(WEBGL)
5263 { "CCW", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0901) } },
5264#else
5265 { 0, 0, NoIntrinsic, { 0, 0 } },
5266#endif
5267#if ENABLE(WEBGL)
5268 { "LINE_WIDTH", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0B21) } },
5269#else
5270 { 0, 0, NoIntrinsic, { 0, 0 } },
5271#endif
5272#if ENABLE(WEBGL)
5273 { "ALIASED_POINT_SIZE_RANGE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x846D) } },
5274#else
5275 { 0, 0, NoIntrinsic, { 0, 0 } },
5276#endif
5277#if ENABLE(WEBGL)
5278 { "ALIASED_LINE_WIDTH_RANGE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x846E) } },
5279#else
5280 { 0, 0, NoIntrinsic, { 0, 0 } },
5281#endif
5282#if ENABLE(WEBGL)
5283 { "CULL_FACE_MODE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0B45) } },
5284#else
5285 { 0, 0, NoIntrinsic, { 0, 0 } },
5286#endif
5287#if ENABLE(WEBGL)
5288 { "FRONT_FACE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0B46) } },
5289#else
5290 { 0, 0, NoIntrinsic, { 0, 0 } },
5291#endif
5292#if ENABLE(WEBGL)
5293 { "DEPTH_RANGE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0B70) } },
5294#else
5295 { 0, 0, NoIntrinsic, { 0, 0 } },
5296#endif
5297#if ENABLE(WEBGL)
5298 { "DEPTH_WRITEMASK", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0B72) } },
5299#else
5300 { 0, 0, NoIntrinsic, { 0, 0 } },
5301#endif
5302#if ENABLE(WEBGL)
5303 { "DEPTH_CLEAR_VALUE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0B73) } },
5304#else
5305 { 0, 0, NoIntrinsic, { 0, 0 } },
5306#endif
5307#if ENABLE(WEBGL)
5308 { "DEPTH_FUNC", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0B74) } },
5309#else
5310 { 0, 0, NoIntrinsic, { 0, 0 } },
5311#endif
5312#if ENABLE(WEBGL)
5313 { "STENCIL_CLEAR_VALUE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0B91) } },
5314#else
5315 { 0, 0, NoIntrinsic, { 0, 0 } },
5316#endif
5317#if ENABLE(WEBGL)
5318 { "STENCIL_FUNC", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0B92) } },
5319#else
5320 { 0, 0, NoIntrinsic, { 0, 0 } },
5321#endif
5322#if ENABLE(WEBGL)
5323 { "STENCIL_FAIL", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0B94) } },
5324#else
5325 { 0, 0, NoIntrinsic, { 0, 0 } },
5326#endif
5327#if ENABLE(WEBGL)
5328 { "STENCIL_PASS_DEPTH_FAIL", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0B95) } },
5329#else
5330 { 0, 0, NoIntrinsic, { 0, 0 } },
5331#endif
5332#if ENABLE(WEBGL)
5333 { "STENCIL_PASS_DEPTH_PASS", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0B96) } },
5334#else
5335 { 0, 0, NoIntrinsic, { 0, 0 } },
5336#endif
5337#if ENABLE(WEBGL)
5338 { "STENCIL_REF", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0B97) } },
5339#else
5340 { 0, 0, NoIntrinsic, { 0, 0 } },
5341#endif
5342#if ENABLE(WEBGL)
5343 { "STENCIL_VALUE_MASK", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0B93) } },
5344#else
5345 { 0, 0, NoIntrinsic, { 0, 0 } },
5346#endif
5347#if ENABLE(WEBGL)
5348 { "STENCIL_WRITEMASK", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0B98) } },
5349#else
5350 { 0, 0, NoIntrinsic, { 0, 0 } },
5351#endif
5352#if ENABLE(WEBGL)
5353 { "STENCIL_BACK_FUNC", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8800) } },
5354#else
5355 { 0, 0, NoIntrinsic, { 0, 0 } },
5356#endif
5357#if ENABLE(WEBGL)
5358 { "STENCIL_BACK_FAIL", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8801) } },
5359#else
5360 { 0, 0, NoIntrinsic, { 0, 0 } },
5361#endif
5362#if ENABLE(WEBGL)
5363 { "STENCIL_BACK_PASS_DEPTH_FAIL", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8802) } },
5364#else
5365 { 0, 0, NoIntrinsic, { 0, 0 } },
5366#endif
5367#if ENABLE(WEBGL)
5368 { "STENCIL_BACK_PASS_DEPTH_PASS", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8803) } },
5369#else
5370 { 0, 0, NoIntrinsic, { 0, 0 } },
5371#endif
5372#if ENABLE(WEBGL)
5373 { "STENCIL_BACK_REF", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8CA3) } },
5374#else
5375 { 0, 0, NoIntrinsic, { 0, 0 } },
5376#endif
5377#if ENABLE(WEBGL)
5378 { "STENCIL_BACK_VALUE_MASK", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8CA4) } },
5379#else
5380 { 0, 0, NoIntrinsic, { 0, 0 } },
5381#endif
5382#if ENABLE(WEBGL)
5383 { "STENCIL_BACK_WRITEMASK", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8CA5) } },
5384#else
5385 { 0, 0, NoIntrinsic, { 0, 0 } },
5386#endif
5387#if ENABLE(WEBGL)
5388 { "VIEWPORT", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0BA2) } },
5389#else
5390 { 0, 0, NoIntrinsic, { 0, 0 } },
5391#endif
5392#if ENABLE(WEBGL)
5393 { "SCISSOR_BOX", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0C10) } },
5394#else
5395 { 0, 0, NoIntrinsic, { 0, 0 } },
5396#endif
5397#if ENABLE(WEBGL)
5398 { "COLOR_CLEAR_VALUE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0C22) } },
5399#else
5400 { 0, 0, NoIntrinsic, { 0, 0 } },
5401#endif
5402#if ENABLE(WEBGL)
5403 { "COLOR_WRITEMASK", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0C23) } },
5404#else
5405 { 0, 0, NoIntrinsic, { 0, 0 } },
5406#endif
5407#if ENABLE(WEBGL)
5408 { "UNPACK_ALIGNMENT", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0CF5) } },
5409#else
5410 { 0, 0, NoIntrinsic, { 0, 0 } },
5411#endif
5412#if ENABLE(WEBGL)
5413 { "PACK_ALIGNMENT", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0D05) } },
5414#else
5415 { 0, 0, NoIntrinsic, { 0, 0 } },
5416#endif
5417#if ENABLE(WEBGL)
5418 { "MAX_TEXTURE_SIZE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0D33) } },
5419#else
5420 { 0, 0, NoIntrinsic, { 0, 0 } },
5421#endif
5422#if ENABLE(WEBGL)
5423 { "MAX_VIEWPORT_DIMS", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0D3A) } },
5424#else
5425 { 0, 0, NoIntrinsic, { 0, 0 } },
5426#endif
5427#if ENABLE(WEBGL)
5428 { "SUBPIXEL_BITS", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0D50) } },
5429#else
5430 { 0, 0, NoIntrinsic, { 0, 0 } },
5431#endif
5432#if ENABLE(WEBGL)
5433 { "RED_BITS", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0D52) } },
5434#else
5435 { 0, 0, NoIntrinsic, { 0, 0 } },
5436#endif
5437#if ENABLE(WEBGL)
5438 { "GREEN_BITS", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0D53) } },
5439#else
5440 { 0, 0, NoIntrinsic, { 0, 0 } },
5441#endif
5442#if ENABLE(WEBGL)
5443 { "BLUE_BITS", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0D54) } },
5444#else
5445 { 0, 0, NoIntrinsic, { 0, 0 } },
5446#endif
5447#if ENABLE(WEBGL)
5448 { "ALPHA_BITS", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0D55) } },
5449#else
5450 { 0, 0, NoIntrinsic, { 0, 0 } },
5451#endif
5452#if ENABLE(WEBGL)
5453 { "DEPTH_BITS", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0D56) } },
5454#else
5455 { 0, 0, NoIntrinsic, { 0, 0 } },
5456#endif
5457#if ENABLE(WEBGL)
5458 { "STENCIL_BITS", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0D57) } },
5459#else
5460 { 0, 0, NoIntrinsic, { 0, 0 } },
5461#endif
5462#if ENABLE(WEBGL)
5463 { "POLYGON_OFFSET_UNITS", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x2A00) } },
5464#else
5465 { 0, 0, NoIntrinsic, { 0, 0 } },
5466#endif
5467#if ENABLE(WEBGL)
5468 { "POLYGON_OFFSET_FACTOR", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8038) } },
5469#else
5470 { 0, 0, NoIntrinsic, { 0, 0 } },
5471#endif
5472#if ENABLE(WEBGL)
5473 { "TEXTURE_BINDING_2D", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8069) } },
5474#else
5475 { 0, 0, NoIntrinsic, { 0, 0 } },
5476#endif
5477#if ENABLE(WEBGL)
5478 { "SAMPLE_BUFFERS", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x80A8) } },
5479#else
5480 { 0, 0, NoIntrinsic, { 0, 0 } },
5481#endif
5482#if ENABLE(WEBGL)
5483 { "SAMPLES", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x80A9) } },
5484#else
5485 { 0, 0, NoIntrinsic, { 0, 0 } },
5486#endif
5487#if ENABLE(WEBGL)
5488 { "SAMPLE_COVERAGE_VALUE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x80AA) } },
5489#else
5490 { 0, 0, NoIntrinsic, { 0, 0 } },
5491#endif
5492#if ENABLE(WEBGL)
5493 { "SAMPLE_COVERAGE_INVERT", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x80AB) } },
5494#else
5495 { 0, 0, NoIntrinsic, { 0, 0 } },
5496#endif
5497#if ENABLE(WEBGL)
5498 { "COMPRESSED_TEXTURE_FORMATS", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x86A3) } },
5499#else
5500 { 0, 0, NoIntrinsic, { 0, 0 } },
5501#endif
5502#if ENABLE(WEBGL)
5503 { "DONT_CARE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x1100) } },
5504#else
5505 { 0, 0, NoIntrinsic, { 0, 0 } },
5506#endif
5507#if ENABLE(WEBGL)
5508 { "FASTEST", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x1101) } },
5509#else
5510 { 0, 0, NoIntrinsic, { 0, 0 } },
5511#endif
5512#if ENABLE(WEBGL)
5513 { "NICEST", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x1102) } },
5514#else
5515 { 0, 0, NoIntrinsic, { 0, 0 } },
5516#endif
5517#if ENABLE(WEBGL)
5518 { "GENERATE_MIPMAP_HINT", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8192) } },
5519#else
5520 { 0, 0, NoIntrinsic, { 0, 0 } },
5521#endif
5522#if ENABLE(WEBGL)
5523 { "BYTE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x1400) } },
5524#else
5525 { 0, 0, NoIntrinsic, { 0, 0 } },
5526#endif
5527#if ENABLE(WEBGL)
5528 { "UNSIGNED_BYTE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x1401) } },
5529#else
5530 { 0, 0, NoIntrinsic, { 0, 0 } },
5531#endif
5532#if ENABLE(WEBGL)
5533 { "SHORT", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x1402) } },
5534#else
5535 { 0, 0, NoIntrinsic, { 0, 0 } },
5536#endif
5537#if ENABLE(WEBGL)
5538 { "UNSIGNED_SHORT", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x1403) } },
5539#else
5540 { 0, 0, NoIntrinsic, { 0, 0 } },
5541#endif
5542#if ENABLE(WEBGL)
5543 { "INT", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x1404) } },
5544#else
5545 { 0, 0, NoIntrinsic, { 0, 0 } },
5546#endif
5547#if ENABLE(WEBGL)
5548 { "UNSIGNED_INT", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x1405) } },
5549#else
5550 { 0, 0, NoIntrinsic, { 0, 0 } },
5551#endif
5552#if ENABLE(WEBGL)
5553 { "FLOAT", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x1406) } },
5554#else
5555 { 0, 0, NoIntrinsic, { 0, 0 } },
5556#endif
5557#if ENABLE(WEBGL)
5558 { "DEPTH_COMPONENT", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x1902) } },
5559#else
5560 { 0, 0, NoIntrinsic, { 0, 0 } },
5561#endif
5562#if ENABLE(WEBGL)
5563 { "ALPHA", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x1906) } },
5564#else
5565 { 0, 0, NoIntrinsic, { 0, 0 } },
5566#endif
5567#if ENABLE(WEBGL)
5568 { "RGB", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x1907) } },
5569#else
5570 { 0, 0, NoIntrinsic, { 0, 0 } },
5571#endif
5572#if ENABLE(WEBGL)
5573 { "RGBA", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x1908) } },
5574#else
5575 { 0, 0, NoIntrinsic, { 0, 0 } },
5576#endif
5577#if ENABLE(WEBGL)
5578 { "LUMINANCE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x1909) } },
5579#else
5580 { 0, 0, NoIntrinsic, { 0, 0 } },
5581#endif
5582#if ENABLE(WEBGL)
5583 { "LUMINANCE_ALPHA", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x190A) } },
5584#else
5585 { 0, 0, NoIntrinsic, { 0, 0 } },
5586#endif
5587#if ENABLE(WEBGL)
5588 { "UNSIGNED_SHORT_4_4_4_4", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8033) } },
5589#else
5590 { 0, 0, NoIntrinsic, { 0, 0 } },
5591#endif
5592#if ENABLE(WEBGL)
5593 { "UNSIGNED_SHORT_5_5_5_1", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8034) } },
5594#else
5595 { 0, 0, NoIntrinsic, { 0, 0 } },
5596#endif
5597#if ENABLE(WEBGL)
5598 { "UNSIGNED_SHORT_5_6_5", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8363) } },
5599#else
5600 { 0, 0, NoIntrinsic, { 0, 0 } },
5601#endif
5602#if ENABLE(WEBGL)
5603 { "FRAGMENT_SHADER", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8B30) } },
5604#else
5605 { 0, 0, NoIntrinsic, { 0, 0 } },
5606#endif
5607#if ENABLE(WEBGL)
5608 { "VERTEX_SHADER", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8B31) } },
5609#else
5610 { 0, 0, NoIntrinsic, { 0, 0 } },
5611#endif
5612#if ENABLE(WEBGL)
5613 { "MAX_VERTEX_ATTRIBS", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8869) } },
5614#else
5615 { 0, 0, NoIntrinsic, { 0, 0 } },
5616#endif
5617#if ENABLE(WEBGL)
5618 { "MAX_VERTEX_UNIFORM_VECTORS", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8DFB) } },
5619#else
5620 { 0, 0, NoIntrinsic, { 0, 0 } },
5621#endif
5622#if ENABLE(WEBGL)
5623 { "MAX_VARYING_VECTORS", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8DFC) } },
5624#else
5625 { 0, 0, NoIntrinsic, { 0, 0 } },
5626#endif
5627#if ENABLE(WEBGL)
5628 { "MAX_COMBINED_TEXTURE_IMAGE_UNITS", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8B4D) } },
5629#else
5630 { 0, 0, NoIntrinsic, { 0, 0 } },
5631#endif
5632#if ENABLE(WEBGL)
5633 { "MAX_VERTEX_TEXTURE_IMAGE_UNITS", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8B4C) } },
5634#else
5635 { 0, 0, NoIntrinsic, { 0, 0 } },
5636#endif
5637#if ENABLE(WEBGL)
5638 { "MAX_TEXTURE_IMAGE_UNITS", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8872) } },
5639#else
5640 { 0, 0, NoIntrinsic, { 0, 0 } },
5641#endif
5642#if ENABLE(WEBGL)
5643 { "MAX_FRAGMENT_UNIFORM_VECTORS", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8DFD) } },
5644#else
5645 { 0, 0, NoIntrinsic, { 0, 0 } },
5646#endif
5647#if ENABLE(WEBGL)
5648 { "SHADER_TYPE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8B4F) } },
5649#else
5650 { 0, 0, NoIntrinsic, { 0, 0 } },
5651#endif
5652#if ENABLE(WEBGL)
5653 { "DELETE_STATUS", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8B80) } },
5654#else
5655 { 0, 0, NoIntrinsic, { 0, 0 } },
5656#endif
5657#if ENABLE(WEBGL)
5658 { "LINK_STATUS", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8B82) } },
5659#else
5660 { 0, 0, NoIntrinsic, { 0, 0 } },
5661#endif
5662#if ENABLE(WEBGL)
5663 { "VALIDATE_STATUS", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8B83) } },
5664#else
5665 { 0, 0, NoIntrinsic, { 0, 0 } },
5666#endif
5667#if ENABLE(WEBGL)
5668 { "ATTACHED_SHADERS", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8B85) } },
5669#else
5670 { 0, 0, NoIntrinsic, { 0, 0 } },
5671#endif
5672#if ENABLE(WEBGL)
5673 { "ACTIVE_UNIFORMS", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8B86) } },
5674#else
5675 { 0, 0, NoIntrinsic, { 0, 0 } },
5676#endif
5677#if ENABLE(WEBGL)
5678 { "ACTIVE_ATTRIBUTES", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8B89) } },
5679#else
5680 { 0, 0, NoIntrinsic, { 0, 0 } },
5681#endif
5682#if ENABLE(WEBGL)
5683 { "SHADING_LANGUAGE_VERSION", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8B8C) } },
5684#else
5685 { 0, 0, NoIntrinsic, { 0, 0 } },
5686#endif
5687#if ENABLE(WEBGL)
5688 { "CURRENT_PROGRAM", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8B8D) } },
5689#else
5690 { 0, 0, NoIntrinsic, { 0, 0 } },
5691#endif
5692#if ENABLE(WEBGL)
5693 { "NEVER", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0200) } },
5694#else
5695 { 0, 0, NoIntrinsic, { 0, 0 } },
5696#endif
5697#if ENABLE(WEBGL)
5698 { "LESS", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0201) } },
5699#else
5700 { 0, 0, NoIntrinsic, { 0, 0 } },
5701#endif
5702#if ENABLE(WEBGL)
5703 { "EQUAL", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0202) } },
5704#else
5705 { 0, 0, NoIntrinsic, { 0, 0 } },
5706#endif
5707#if ENABLE(WEBGL)
5708 { "LEQUAL", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0203) } },
5709#else
5710 { 0, 0, NoIntrinsic, { 0, 0 } },
5711#endif
5712#if ENABLE(WEBGL)
5713 { "GREATER", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0204) } },
5714#else
5715 { 0, 0, NoIntrinsic, { 0, 0 } },
5716#endif
5717#if ENABLE(WEBGL)
5718 { "NOTEQUAL", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0205) } },
5719#else
5720 { 0, 0, NoIntrinsic, { 0, 0 } },
5721#endif
5722#if ENABLE(WEBGL)
5723 { "GEQUAL", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0206) } },
5724#else
5725 { 0, 0, NoIntrinsic, { 0, 0 } },
5726#endif
5727#if ENABLE(WEBGL)
5728 { "ALWAYS", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0207) } },
5729#else
5730 { 0, 0, NoIntrinsic, { 0, 0 } },
5731#endif
5732#if ENABLE(WEBGL)
5733 { "KEEP", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x1E00) } },
5734#else
5735 { 0, 0, NoIntrinsic, { 0, 0 } },
5736#endif
5737#if ENABLE(WEBGL)
5738 { "REPLACE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x1E01) } },
5739#else
5740 { 0, 0, NoIntrinsic, { 0, 0 } },
5741#endif
5742#if ENABLE(WEBGL)
5743 { "INCR", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x1E02) } },
5744#else
5745 { 0, 0, NoIntrinsic, { 0, 0 } },
5746#endif
5747#if ENABLE(WEBGL)
5748 { "DECR", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x1E03) } },
5749#else
5750 { 0, 0, NoIntrinsic, { 0, 0 } },
5751#endif
5752#if ENABLE(WEBGL)
5753 { "INVERT", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x150A) } },
5754#else
5755 { 0, 0, NoIntrinsic, { 0, 0 } },
5756#endif
5757#if ENABLE(WEBGL)
5758 { "INCR_WRAP", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8507) } },
5759#else
5760 { 0, 0, NoIntrinsic, { 0, 0 } },
5761#endif
5762#if ENABLE(WEBGL)
5763 { "DECR_WRAP", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8508) } },
5764#else
5765 { 0, 0, NoIntrinsic, { 0, 0 } },
5766#endif
5767#if ENABLE(WEBGL)
5768 { "VENDOR", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x1F00) } },
5769#else
5770 { 0, 0, NoIntrinsic, { 0, 0 } },
5771#endif
5772#if ENABLE(WEBGL)
5773 { "RENDERER", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x1F01) } },
5774#else
5775 { 0, 0, NoIntrinsic, { 0, 0 } },
5776#endif
5777#if ENABLE(WEBGL)
5778 { "VERSION", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x1F02) } },
5779#else
5780 { 0, 0, NoIntrinsic, { 0, 0 } },
5781#endif
5782#if ENABLE(WEBGL)
5783 { "NEAREST", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x2600) } },
5784#else
5785 { 0, 0, NoIntrinsic, { 0, 0 } },
5786#endif
5787#if ENABLE(WEBGL)
5788 { "LINEAR", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x2601) } },
5789#else
5790 { 0, 0, NoIntrinsic, { 0, 0 } },
5791#endif
5792#if ENABLE(WEBGL)
5793 { "NEAREST_MIPMAP_NEAREST", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x2700) } },
5794#else
5795 { 0, 0, NoIntrinsic, { 0, 0 } },
5796#endif
5797#if ENABLE(WEBGL)
5798 { "LINEAR_MIPMAP_NEAREST", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x2701) } },
5799#else
5800 { 0, 0, NoIntrinsic, { 0, 0 } },
5801#endif
5802#if ENABLE(WEBGL)
5803 { "NEAREST_MIPMAP_LINEAR", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x2702) } },
5804#else
5805 { 0, 0, NoIntrinsic, { 0, 0 } },
5806#endif
5807#if ENABLE(WEBGL)
5808 { "LINEAR_MIPMAP_LINEAR", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x2703) } },
5809#else
5810 { 0, 0, NoIntrinsic, { 0, 0 } },
5811#endif
5812#if ENABLE(WEBGL)
5813 { "TEXTURE_MAG_FILTER", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x2800) } },
5814#else
5815 { 0, 0, NoIntrinsic, { 0, 0 } },
5816#endif
5817#if ENABLE(WEBGL)
5818 { "TEXTURE_MIN_FILTER", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x2801) } },
5819#else
5820 { 0, 0, NoIntrinsic, { 0, 0 } },
5821#endif
5822#if ENABLE(WEBGL)
5823 { "TEXTURE_WRAP_S", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x2802) } },
5824#else
5825 { 0, 0, NoIntrinsic, { 0, 0 } },
5826#endif
5827#if ENABLE(WEBGL)
5828 { "TEXTURE_WRAP_T", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x2803) } },
5829#else
5830 { 0, 0, NoIntrinsic, { 0, 0 } },
5831#endif
5832#if ENABLE(WEBGL)
5833 { "TEXTURE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x1702) } },
5834#else
5835 { 0, 0, NoIntrinsic, { 0, 0 } },
5836#endif
5837#if ENABLE(WEBGL)
5838 { "TEXTURE_CUBE_MAP", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8513) } },
5839#else
5840 { 0, 0, NoIntrinsic, { 0, 0 } },
5841#endif
5842#if ENABLE(WEBGL)
5843 { "TEXTURE_BINDING_CUBE_MAP", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8514) } },
5844#else
5845 { 0, 0, NoIntrinsic, { 0, 0 } },
5846#endif
5847#if ENABLE(WEBGL)
5848 { "TEXTURE_CUBE_MAP_POSITIVE_X", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8515) } },
5849#else
5850 { 0, 0, NoIntrinsic, { 0, 0 } },
5851#endif
5852#if ENABLE(WEBGL)
5853 { "TEXTURE_CUBE_MAP_NEGATIVE_X", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8516) } },
5854#else
5855 { 0, 0, NoIntrinsic, { 0, 0 } },
5856#endif
5857#if ENABLE(WEBGL)
5858 { "TEXTURE_CUBE_MAP_POSITIVE_Y", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8517) } },
5859#else
5860 { 0, 0, NoIntrinsic, { 0, 0 } },
5861#endif
5862#if ENABLE(WEBGL)
5863 { "TEXTURE_CUBE_MAP_NEGATIVE_Y", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8518) } },
5864#else
5865 { 0, 0, NoIntrinsic, { 0, 0 } },
5866#endif
5867#if ENABLE(WEBGL)
5868 { "TEXTURE_CUBE_MAP_POSITIVE_Z", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8519) } },
5869#else
5870 { 0, 0, NoIntrinsic, { 0, 0 } },
5871#endif
5872#if ENABLE(WEBGL)
5873 { "TEXTURE_CUBE_MAP_NEGATIVE_Z", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x851A) } },
5874#else
5875 { 0, 0, NoIntrinsic, { 0, 0 } },
5876#endif
5877#if ENABLE(WEBGL)
5878 { "MAX_CUBE_MAP_TEXTURE_SIZE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x851C) } },
5879#else
5880 { 0, 0, NoIntrinsic, { 0, 0 } },
5881#endif
5882#if ENABLE(WEBGL)
5883 { "TEXTURE0", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x84C0) } },
5884#else
5885 { 0, 0, NoIntrinsic, { 0, 0 } },
5886#endif
5887#if ENABLE(WEBGL)
5888 { "TEXTURE1", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x84C1) } },
5889#else
5890 { 0, 0, NoIntrinsic, { 0, 0 } },
5891#endif
5892#if ENABLE(WEBGL)
5893 { "TEXTURE2", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x84C2) } },
5894#else
5895 { 0, 0, NoIntrinsic, { 0, 0 } },
5896#endif
5897#if ENABLE(WEBGL)
5898 { "TEXTURE3", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x84C3) } },
5899#else
5900 { 0, 0, NoIntrinsic, { 0, 0 } },
5901#endif
5902#if ENABLE(WEBGL)
5903 { "TEXTURE4", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x84C4) } },
5904#else
5905 { 0, 0, NoIntrinsic, { 0, 0 } },
5906#endif
5907#if ENABLE(WEBGL)
5908 { "TEXTURE5", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x84C5) } },
5909#else
5910 { 0, 0, NoIntrinsic, { 0, 0 } },
5911#endif
5912#if ENABLE(WEBGL)
5913 { "TEXTURE6", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x84C6) } },
5914#else
5915 { 0, 0, NoIntrinsic, { 0, 0 } },
5916#endif
5917#if ENABLE(WEBGL)
5918 { "TEXTURE7", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x84C7) } },
5919#else
5920 { 0, 0, NoIntrinsic, { 0, 0 } },
5921#endif
5922#if ENABLE(WEBGL)
5923 { "TEXTURE8", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x84C8) } },
5924#else
5925 { 0, 0, NoIntrinsic, { 0, 0 } },
5926#endif
5927#if ENABLE(WEBGL)
5928 { "TEXTURE9", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x84C9) } },
5929#else
5930 { 0, 0, NoIntrinsic, { 0, 0 } },
5931#endif
5932#if ENABLE(WEBGL)
5933 { "TEXTURE10", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x84CA) } },
5934#else
5935 { 0, 0, NoIntrinsic, { 0, 0 } },
5936#endif
5937#if ENABLE(WEBGL)
5938 { "TEXTURE11", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x84CB) } },
5939#else
5940 { 0, 0, NoIntrinsic, { 0, 0 } },
5941#endif
5942#if ENABLE(WEBGL)
5943 { "TEXTURE12", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x84CC) } },
5944#else
5945 { 0, 0, NoIntrinsic, { 0, 0 } },
5946#endif
5947#if ENABLE(WEBGL)
5948 { "TEXTURE13", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x84CD) } },
5949#else
5950 { 0, 0, NoIntrinsic, { 0, 0 } },
5951#endif
5952#if ENABLE(WEBGL)
5953 { "TEXTURE14", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x84CE) } },
5954#else
5955 { 0, 0, NoIntrinsic, { 0, 0 } },
5956#endif
5957#if ENABLE(WEBGL)
5958 { "TEXTURE15", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x84CF) } },
5959#else
5960 { 0, 0, NoIntrinsic, { 0, 0 } },
5961#endif
5962#if ENABLE(WEBGL)
5963 { "TEXTURE16", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x84D0) } },
5964#else
5965 { 0, 0, NoIntrinsic, { 0, 0 } },
5966#endif
5967#if ENABLE(WEBGL)
5968 { "TEXTURE17", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x84D1) } },
5969#else
5970 { 0, 0, NoIntrinsic, { 0, 0 } },
5971#endif
5972#if ENABLE(WEBGL)
5973 { "TEXTURE18", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x84D2) } },
5974#else
5975 { 0, 0, NoIntrinsic, { 0, 0 } },
5976#endif
5977#if ENABLE(WEBGL)
5978 { "TEXTURE19", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x84D3) } },
5979#else
5980 { 0, 0, NoIntrinsic, { 0, 0 } },
5981#endif
5982#if ENABLE(WEBGL)
5983 { "TEXTURE20", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x84D4) } },
5984#else
5985 { 0, 0, NoIntrinsic, { 0, 0 } },
5986#endif
5987#if ENABLE(WEBGL)
5988 { "TEXTURE21", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x84D5) } },
5989#else
5990 { 0, 0, NoIntrinsic, { 0, 0 } },
5991#endif
5992#if ENABLE(WEBGL)
5993 { "TEXTURE22", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x84D6) } },
5994#else
5995 { 0, 0, NoIntrinsic, { 0, 0 } },
5996#endif
5997#if ENABLE(WEBGL)
5998 { "TEXTURE23", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x84D7) } },
5999#else
6000 { 0, 0, NoIntrinsic, { 0, 0 } },
6001#endif
6002#if ENABLE(WEBGL)
6003 { "TEXTURE24", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x84D8) } },
6004#else
6005 { 0, 0, NoIntrinsic, { 0, 0 } },
6006#endif
6007#if ENABLE(WEBGL)
6008 { "TEXTURE25", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x84D9) } },
6009#else
6010 { 0, 0, NoIntrinsic, { 0, 0 } },
6011#endif
6012#if ENABLE(WEBGL)
6013 { "TEXTURE26", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x84DA) } },
6014#else
6015 { 0, 0, NoIntrinsic, { 0, 0 } },
6016#endif
6017#if ENABLE(WEBGL)
6018 { "TEXTURE27", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x84DB) } },
6019#else
6020 { 0, 0, NoIntrinsic, { 0, 0 } },
6021#endif
6022#if ENABLE(WEBGL)
6023 { "TEXTURE28", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x84DC) } },
6024#else
6025 { 0, 0, NoIntrinsic, { 0, 0 } },
6026#endif
6027#if ENABLE(WEBGL)
6028 { "TEXTURE29", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x84DD) } },
6029#else
6030 { 0, 0, NoIntrinsic, { 0, 0 } },
6031#endif
6032#if ENABLE(WEBGL)
6033 { "TEXTURE30", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x84DE) } },
6034#else
6035 { 0, 0, NoIntrinsic, { 0, 0 } },
6036#endif
6037#if ENABLE(WEBGL)
6038 { "TEXTURE31", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x84DF) } },
6039#else
6040 { 0, 0, NoIntrinsic, { 0, 0 } },
6041#endif
6042#if ENABLE(WEBGL)
6043 { "ACTIVE_TEXTURE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x84E0) } },
6044#else
6045 { 0, 0, NoIntrinsic, { 0, 0 } },
6046#endif
6047#if ENABLE(WEBGL)
6048 { "REPEAT", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x2901) } },
6049#else
6050 { 0, 0, NoIntrinsic, { 0, 0 } },
6051#endif
6052#if ENABLE(WEBGL)
6053 { "CLAMP_TO_EDGE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x812F) } },
6054#else
6055 { 0, 0, NoIntrinsic, { 0, 0 } },
6056#endif
6057#if ENABLE(WEBGL)
6058 { "MIRRORED_REPEAT", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8370) } },
6059#else
6060 { 0, 0, NoIntrinsic, { 0, 0 } },
6061#endif
6062#if ENABLE(WEBGL)
6063 { "FLOAT_VEC2", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8B50) } },
6064#else
6065 { 0, 0, NoIntrinsic, { 0, 0 } },
6066#endif
6067#if ENABLE(WEBGL)
6068 { "FLOAT_VEC3", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8B51) } },
6069#else
6070 { 0, 0, NoIntrinsic, { 0, 0 } },
6071#endif
6072#if ENABLE(WEBGL)
6073 { "FLOAT_VEC4", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8B52) } },
6074#else
6075 { 0, 0, NoIntrinsic, { 0, 0 } },
6076#endif
6077#if ENABLE(WEBGL)
6078 { "INT_VEC2", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8B53) } },
6079#else
6080 { 0, 0, NoIntrinsic, { 0, 0 } },
6081#endif
6082#if ENABLE(WEBGL)
6083 { "INT_VEC3", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8B54) } },
6084#else
6085 { 0, 0, NoIntrinsic, { 0, 0 } },
6086#endif
6087#if ENABLE(WEBGL)
6088 { "INT_VEC4", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8B55) } },
6089#else
6090 { 0, 0, NoIntrinsic, { 0, 0 } },
6091#endif
6092#if ENABLE(WEBGL)
6093 { "BOOL", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8B56) } },
6094#else
6095 { 0, 0, NoIntrinsic, { 0, 0 } },
6096#endif
6097#if ENABLE(WEBGL)
6098 { "BOOL_VEC2", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8B57) } },
6099#else
6100 { 0, 0, NoIntrinsic, { 0, 0 } },
6101#endif
6102#if ENABLE(WEBGL)
6103 { "BOOL_VEC3", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8B58) } },
6104#else
6105 { 0, 0, NoIntrinsic, { 0, 0 } },
6106#endif
6107#if ENABLE(WEBGL)
6108 { "BOOL_VEC4", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8B59) } },
6109#else
6110 { 0, 0, NoIntrinsic, { 0, 0 } },
6111#endif
6112#if ENABLE(WEBGL)
6113 { "FLOAT_MAT2", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8B5A) } },
6114#else
6115 { 0, 0, NoIntrinsic, { 0, 0 } },
6116#endif
6117#if ENABLE(WEBGL)
6118 { "FLOAT_MAT3", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8B5B) } },
6119#else
6120 { 0, 0, NoIntrinsic, { 0, 0 } },
6121#endif
6122#if ENABLE(WEBGL)
6123 { "FLOAT_MAT4", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8B5C) } },
6124#else
6125 { 0, 0, NoIntrinsic, { 0, 0 } },
6126#endif
6127#if ENABLE(WEBGL)
6128 { "SAMPLER_2D", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8B5E) } },
6129#else
6130 { 0, 0, NoIntrinsic, { 0, 0 } },
6131#endif
6132#if ENABLE(WEBGL)
6133 { "SAMPLER_CUBE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8B60) } },
6134#else
6135 { 0, 0, NoIntrinsic, { 0, 0 } },
6136#endif
6137#if ENABLE(WEBGL)
6138 { "VERTEX_ATTRIB_ARRAY_ENABLED", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8622) } },
6139#else
6140 { 0, 0, NoIntrinsic, { 0, 0 } },
6141#endif
6142#if ENABLE(WEBGL)
6143 { "VERTEX_ATTRIB_ARRAY_SIZE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8623) } },
6144#else
6145 { 0, 0, NoIntrinsic, { 0, 0 } },
6146#endif
6147#if ENABLE(WEBGL)
6148 { "VERTEX_ATTRIB_ARRAY_STRIDE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8624) } },
6149#else
6150 { 0, 0, NoIntrinsic, { 0, 0 } },
6151#endif
6152#if ENABLE(WEBGL)
6153 { "VERTEX_ATTRIB_ARRAY_TYPE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8625) } },
6154#else
6155 { 0, 0, NoIntrinsic, { 0, 0 } },
6156#endif
6157#if ENABLE(WEBGL)
6158 { "VERTEX_ATTRIB_ARRAY_NORMALIZED", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x886A) } },
6159#else
6160 { 0, 0, NoIntrinsic, { 0, 0 } },
6161#endif
6162#if ENABLE(WEBGL)
6163 { "VERTEX_ATTRIB_ARRAY_POINTER", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8645) } },
6164#else
6165 { 0, 0, NoIntrinsic, { 0, 0 } },
6166#endif
6167#if ENABLE(WEBGL)
6168 { "VERTEX_ATTRIB_ARRAY_BUFFER_BINDING", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x889F) } },
6169#else
6170 { 0, 0, NoIntrinsic, { 0, 0 } },
6171#endif
6172#if ENABLE(WEBGL)
6173 { "IMPLEMENTATION_COLOR_READ_TYPE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8B9A) } },
6174#else
6175 { 0, 0, NoIntrinsic, { 0, 0 } },
6176#endif
6177#if ENABLE(WEBGL)
6178 { "IMPLEMENTATION_COLOR_READ_FORMAT", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8B9B) } },
6179#else
6180 { 0, 0, NoIntrinsic, { 0, 0 } },
6181#endif
6182#if ENABLE(WEBGL)
6183 { "COMPILE_STATUS", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8B81) } },
6184#else
6185 { 0, 0, NoIntrinsic, { 0, 0 } },
6186#endif
6187#if ENABLE(WEBGL)
6188 { "LOW_FLOAT", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8DF0) } },
6189#else
6190 { 0, 0, NoIntrinsic, { 0, 0 } },
6191#endif
6192#if ENABLE(WEBGL)
6193 { "MEDIUM_FLOAT", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8DF1) } },
6194#else
6195 { 0, 0, NoIntrinsic, { 0, 0 } },
6196#endif
6197#if ENABLE(WEBGL)
6198 { "HIGH_FLOAT", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8DF2) } },
6199#else
6200 { 0, 0, NoIntrinsic, { 0, 0 } },
6201#endif
6202#if ENABLE(WEBGL)
6203 { "LOW_INT", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8DF3) } },
6204#else
6205 { 0, 0, NoIntrinsic, { 0, 0 } },
6206#endif
6207#if ENABLE(WEBGL)
6208 { "MEDIUM_INT", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8DF4) } },
6209#else
6210 { 0, 0, NoIntrinsic, { 0, 0 } },
6211#endif
6212#if ENABLE(WEBGL)
6213 { "HIGH_INT", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8DF5) } },
6214#else
6215 { 0, 0, NoIntrinsic, { 0, 0 } },
6216#endif
6217#if ENABLE(WEBGL)
6218 { "FRAMEBUFFER", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8D40) } },
6219#else
6220 { 0, 0, NoIntrinsic, { 0, 0 } },
6221#endif
6222#if ENABLE(WEBGL)
6223 { "RENDERBUFFER", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8D41) } },
6224#else
6225 { 0, 0, NoIntrinsic, { 0, 0 } },
6226#endif
6227#if ENABLE(WEBGL)
6228 { "RGBA4", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8056) } },
6229#else
6230 { 0, 0, NoIntrinsic, { 0, 0 } },
6231#endif
6232#if ENABLE(WEBGL)
6233 { "RGB5_A1", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8057) } },
6234#else
6235 { 0, 0, NoIntrinsic, { 0, 0 } },
6236#endif
6237#if ENABLE(WEBGL)
6238 { "RGB565", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8D62) } },
6239#else
6240 { 0, 0, NoIntrinsic, { 0, 0 } },
6241#endif
6242#if ENABLE(WEBGL)
6243 { "DEPTH_COMPONENT16", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x81A5) } },
6244#else
6245 { 0, 0, NoIntrinsic, { 0, 0 } },
6246#endif
6247#if ENABLE(WEBGL)
6248 { "STENCIL_INDEX", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x1901) } },
6249#else
6250 { 0, 0, NoIntrinsic, { 0, 0 } },
6251#endif
6252#if ENABLE(WEBGL)
6253 { "STENCIL_INDEX8", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8D48) } },
6254#else
6255 { 0, 0, NoIntrinsic, { 0, 0 } },
6256#endif
6257#if ENABLE(WEBGL)
6258 { "DEPTH_STENCIL", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x84F9) } },
6259#else
6260 { 0, 0, NoIntrinsic, { 0, 0 } },
6261#endif
6262#if ENABLE(WEBGL)
6263 { "RENDERBUFFER_WIDTH", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8D42) } },
6264#else
6265 { 0, 0, NoIntrinsic, { 0, 0 } },
6266#endif
6267#if ENABLE(WEBGL)
6268 { "RENDERBUFFER_HEIGHT", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8D43) } },
6269#else
6270 { 0, 0, NoIntrinsic, { 0, 0 } },
6271#endif
6272#if ENABLE(WEBGL)
6273 { "RENDERBUFFER_INTERNAL_FORMAT", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8D44) } },
6274#else
6275 { 0, 0, NoIntrinsic, { 0, 0 } },
6276#endif
6277#if ENABLE(WEBGL)
6278 { "RENDERBUFFER_RED_SIZE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8D50) } },
6279#else
6280 { 0, 0, NoIntrinsic, { 0, 0 } },
6281#endif
6282#if ENABLE(WEBGL)
6283 { "RENDERBUFFER_GREEN_SIZE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8D51) } },
6284#else
6285 { 0, 0, NoIntrinsic, { 0, 0 } },
6286#endif
6287#if ENABLE(WEBGL)
6288 { "RENDERBUFFER_BLUE_SIZE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8D52) } },
6289#else
6290 { 0, 0, NoIntrinsic, { 0, 0 } },
6291#endif
6292#if ENABLE(WEBGL)
6293 { "RENDERBUFFER_ALPHA_SIZE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8D53) } },
6294#else
6295 { 0, 0, NoIntrinsic, { 0, 0 } },
6296#endif
6297#if ENABLE(WEBGL)
6298 { "RENDERBUFFER_DEPTH_SIZE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8D54) } },
6299#else
6300 { 0, 0, NoIntrinsic, { 0, 0 } },
6301#endif
6302#if ENABLE(WEBGL)
6303 { "RENDERBUFFER_STENCIL_SIZE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8D55) } },
6304#else
6305 { 0, 0, NoIntrinsic, { 0, 0 } },
6306#endif
6307#if ENABLE(WEBGL)
6308 { "FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8CD0) } },
6309#else
6310 { 0, 0, NoIntrinsic, { 0, 0 } },
6311#endif
6312#if ENABLE(WEBGL)
6313 { "FRAMEBUFFER_ATTACHMENT_OBJECT_NAME", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8CD1) } },
6314#else
6315 { 0, 0, NoIntrinsic, { 0, 0 } },
6316#endif
6317#if ENABLE(WEBGL)
6318 { "FRAMEBUFFER_ATTACHMENT_TEXTURE_LEVEL", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8CD2) } },
6319#else
6320 { 0, 0, NoIntrinsic, { 0, 0 } },
6321#endif
6322#if ENABLE(WEBGL)
6323 { "FRAMEBUFFER_ATTACHMENT_TEXTURE_CUBE_MAP_FACE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8CD3) } },
6324#else
6325 { 0, 0, NoIntrinsic, { 0, 0 } },
6326#endif
6327#if ENABLE(WEBGL)
6328 { "COLOR_ATTACHMENT0", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8CE0) } },
6329#else
6330 { 0, 0, NoIntrinsic, { 0, 0 } },
6331#endif
6332#if ENABLE(WEBGL)
6333 { "DEPTH_ATTACHMENT", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8D00) } },
6334#else
6335 { 0, 0, NoIntrinsic, { 0, 0 } },
6336#endif
6337#if ENABLE(WEBGL)
6338 { "STENCIL_ATTACHMENT", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8D20) } },
6339#else
6340 { 0, 0, NoIntrinsic, { 0, 0 } },
6341#endif
6342#if ENABLE(WEBGL)
6343 { "DEPTH_STENCIL_ATTACHMENT", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x821A) } },
6344#else
6345 { 0, 0, NoIntrinsic, { 0, 0 } },
6346#endif
6347#if ENABLE(WEBGL)
6348 { "NONE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0) } },
6349#else
6350 { 0, 0, NoIntrinsic, { 0, 0 } },
6351#endif
6352#if ENABLE(WEBGL)
6353 { "FRAMEBUFFER_COMPLETE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8CD5) } },
6354#else
6355 { 0, 0, NoIntrinsic, { 0, 0 } },
6356#endif
6357#if ENABLE(WEBGL)
6358 { "FRAMEBUFFER_INCOMPLETE_ATTACHMENT", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8CD6) } },
6359#else
6360 { 0, 0, NoIntrinsic, { 0, 0 } },
6361#endif
6362#if ENABLE(WEBGL)
6363 { "FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8CD7) } },
6364#else
6365 { 0, 0, NoIntrinsic, { 0, 0 } },
6366#endif
6367#if ENABLE(WEBGL)
6368 { "FRAMEBUFFER_INCOMPLETE_DIMENSIONS", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8CD9) } },
6369#else
6370 { 0, 0, NoIntrinsic, { 0, 0 } },
6371#endif
6372#if ENABLE(WEBGL)
6373 { "FRAMEBUFFER_UNSUPPORTED", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8CDD) } },
6374#else
6375 { 0, 0, NoIntrinsic, { 0, 0 } },
6376#endif
6377#if ENABLE(WEBGL)
6378 { "FRAMEBUFFER_BINDING", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8CA6) } },
6379#else
6380 { 0, 0, NoIntrinsic, { 0, 0 } },
6381#endif
6382#if ENABLE(WEBGL)
6383 { "RENDERBUFFER_BINDING", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x8CA7) } },
6384#else
6385 { 0, 0, NoIntrinsic, { 0, 0 } },
6386#endif
6387#if ENABLE(WEBGL)
6388 { "MAX_RENDERBUFFER_SIZE", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x84E8) } },
6389#else
6390 { 0, 0, NoIntrinsic, { 0, 0 } },
6391#endif
6392#if ENABLE(WEBGL)
6393 { "INVALID_FRAMEBUFFER_OPERATION", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x0506) } },
6394#else
6395 { 0, 0, NoIntrinsic, { 0, 0 } },
6396#endif
6397#if ENABLE(WEBGL)
6398 { "UNPACK_FLIP_Y_WEBGL", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x9240) } },
6399#else
6400 { 0, 0, NoIntrinsic, { 0, 0 } },
6401#endif
6402#if ENABLE(WEBGL)
6403 { "UNPACK_PREMULTIPLY_ALPHA_WEBGL", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x9241) } },
6404#else
6405 { 0, 0, NoIntrinsic, { 0, 0 } },
6406#endif
6407#if ENABLE(WEBGL)
6408 { "CONTEXT_LOST_WEBGL", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x9242) } },
6409#else
6410 { 0, 0, NoIntrinsic, { 0, 0 } },
6411#endif
6412#if ENABLE(WEBGL)
6413 { "UNPACK_COLORSPACE_CONVERSION_WEBGL", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x9243) } },
6414#else
6415 { 0, 0, NoIntrinsic, { 0, 0 } },
6416#endif
6417#if ENABLE(WEBGL)
6418 { "BROWSER_DEFAULT_WEBGL", JSC::PropertyAttribute::ReadOnly | JSC::PropertyAttribute::DontDelete | JSC::PropertyAttribute::ConstantInteger, NoIntrinsic, { (long long)(0x9244) } },
6419#else
6420 { 0, 0, NoIntrinsic, { 0, 0 } },
6421#endif
6422};
6423
6424static const HashTable JSWebGLRenderingContextPrototypeTable = { 438, 1023, true, JSWebGLRenderingContext::info(), JSWebGLRenderingContextPrototypeTableValues, JSWebGLRenderingContextPrototypeTableIndex };
6425const ClassInfo JSWebGLRenderingContextPrototype::s_info = { "WebGLRenderingContext", &Base::s_info, &JSWebGLRenderingContextPrototypeTable, nullptr, CREATE_METHOD_TABLE(JSWebGLRenderingContextPrototype) };
6426
6427void JSWebGLRenderingContextPrototype::finishCreation(VM& vm)
6428{
6429 Base::finishCreation(vm);
6430 reifyStaticProperties(vm, JSWebGLRenderingContext::info(), JSWebGLRenderingContextPrototypeTableValues, *this);
6431 JSC_TO_STRING_TAG_WITHOUT_TRANSITION();
6432}
6433
6434const ClassInfo JSWebGLRenderingContext::s_info = { "WebGLRenderingContext", &Base::s_info, nullptr, nullptr, CREATE_METHOD_TABLE(JSWebGLRenderingContext) };
6435
6436JSWebGLRenderingContext::JSWebGLRenderingContext(Structure* structure, JSDOMGlobalObject& globalObject, Ref<WebGLRenderingContext>&& impl)
6437 : JSDOMWrapper<WebGLRenderingContext>(structure, globalObject, WTFMove(impl))
6438{
6439}
6440
6441void JSWebGLRenderingContext::finishCreation(VM& vm)
6442{
6443 Base::finishCreation(vm);
6444 ASSERT(inherits(vm, info()));
6445
6446 static_assert(std::is_base_of<ActiveDOMObject, WebGLRenderingContext>::value, "Interface is marked as [ActiveDOMObject] but implementation class does not subclass ActiveDOMObject.");
6447
6448}
6449
6450JSObject* JSWebGLRenderingContext::createPrototype(VM& vm, JSDOMGlobalObject& globalObject)
6451{
6452 return JSWebGLRenderingContextPrototype::create(vm, &globalObject, JSWebGLRenderingContextPrototype::createStructure(vm, &globalObject, globalObject.objectPrototype()));
6453}
6454
6455JSObject* JSWebGLRenderingContext::prototype(VM& vm, JSDOMGlobalObject& globalObject)
6456{
6457 return getDOMPrototype<JSWebGLRenderingContext>(vm, globalObject);
6458}
6459
6460JSValue JSWebGLRenderingContext::getConstructor(VM& vm, const JSGlobalObject* globalObject)
6461{
6462 return getDOMConstructor<JSWebGLRenderingContextDOMConstructor, DOMConstructorID::WebGLRenderingContext>(vm, *jsCast<const JSDOMGlobalObject*>(globalObject));
6463}
6464
6465void JSWebGLRenderingContext::destroy(JSC::JSCell* cell)
6466{
6467 JSWebGLRenderingContext* thisObject = static_cast<JSWebGLRenderingContext*>(cell);
6468 thisObject->JSWebGLRenderingContext::~JSWebGLRenderingContext();
6469}
6470
6471JSC_DEFINE_CUSTOM_GETTER(jsWebGLRenderingContextConstructor, (JSGlobalObject* lexicalGlobalObject, EncodedJSValue thisValue, PropertyName))
6472{
6473 VM& vm = JSC::getVM(lexicalGlobalObject);
6474 auto throwScope = DECLARE_THROW_SCOPE(vm);
6475 auto* prototype = jsDynamicCast<JSWebGLRenderingContextPrototype*>(vm, JSValue::decode(thisValue));
6476 if (UNLIKELY(!prototype))
6477 return throwVMTypeError(lexicalGlobalObject, throwScope);
6478 return JSValue::encode(JSWebGLRenderingContext::getConstructor(JSC::getVM(lexicalGlobalObject), prototype->globalObject()));
6479}
6480
6481#if ENABLE(WEBGL)
6482static inline JSValue jsWebGLRenderingContext_canvasGetter(JSGlobalObject& lexicalGlobalObject, JSWebGLRenderingContext& thisObject)
6483{
6484 auto& vm = JSC::getVM(&lexicalGlobalObject);
6485 auto throwScope = DECLARE_THROW_SCOPE(vm);
6486 auto& impl = thisObject.wrapped();
6487 RELEASE_AND_RETURN(throwScope, (toJS<IDLUnion<IDLInterface<HTMLCanvasElement>>>(lexicalGlobalObject, *thisObject.globalObject(), throwScope, impl.canvas())));
6488}
6489
6490JSC_DEFINE_CUSTOM_GETTER(jsWebGLRenderingContext_canvas, (JSGlobalObject* lexicalGlobalObject, EncodedJSValue thisValue, PropertyName attributeName))
6491{
6492 return IDLAttribute<JSWebGLRenderingContext>::get<jsWebGLRenderingContext_canvasGetter, CastedThisErrorBehavior::Assert>(*lexicalGlobalObject, thisValue, attributeName);
6493}
6494
6495#endif
6496
6497#if ENABLE(WEBGL)
6498static inline JSValue jsWebGLRenderingContext_drawingBufferWidthGetter(JSGlobalObject& lexicalGlobalObject, JSWebGLRenderingContext& thisObject)
6499{
6500 auto& vm = JSC::getVM(&lexicalGlobalObject);
6501 auto throwScope = DECLARE_THROW_SCOPE(vm);
6502 auto& impl = thisObject.wrapped();
6503 RELEASE_AND_RETURN(throwScope, (toJS<IDLLong>(lexicalGlobalObject, throwScope, impl.drawingBufferWidth())));
6504}
6505
6506JSC_DEFINE_CUSTOM_GETTER(jsWebGLRenderingContext_drawingBufferWidth, (JSGlobalObject* lexicalGlobalObject, EncodedJSValue thisValue, PropertyName attributeName))
6507{
6508 return IDLAttribute<JSWebGLRenderingContext>::get<jsWebGLRenderingContext_drawingBufferWidthGetter, CastedThisErrorBehavior::Assert>(*lexicalGlobalObject, thisValue, attributeName);
6509}
6510
6511#endif
6512
6513#if ENABLE(WEBGL)
6514static inline JSValue jsWebGLRenderingContext_drawingBufferHeightGetter(JSGlobalObject& lexicalGlobalObject, JSWebGLRenderingContext& thisObject)
6515{
6516 auto& vm = JSC::getVM(&lexicalGlobalObject);
6517 auto throwScope = DECLARE_THROW_SCOPE(vm);
6518 auto& impl = thisObject.wrapped();
6519 RELEASE_AND_RETURN(throwScope, (toJS<IDLLong>(lexicalGlobalObject, throwScope, impl.drawingBufferHeight())));
6520}
6521
6522JSC_DEFINE_CUSTOM_GETTER(jsWebGLRenderingContext_drawingBufferHeight, (JSGlobalObject* lexicalGlobalObject, EncodedJSValue thisValue, PropertyName attributeName))
6523{
6524 return IDLAttribute<JSWebGLRenderingContext>::get<jsWebGLRenderingContext_drawingBufferHeightGetter, CastedThisErrorBehavior::Assert>(*lexicalGlobalObject, thisValue, attributeName);
6525}
6526
6527#endif
6528
6529#if ENABLE(WEBGL)
6530static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_activeTextureBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
6531{
6532 auto& vm = JSC::getVM(lexicalGlobalObject);
6533 auto throwScope = DECLARE_THROW_SCOPE(vm);
6534 UNUSED_PARAM(throwScope);
6535 UNUSED_PARAM(callFrame);
6536 auto& impl = castedThis->wrapped();
6537 if (UNLIKELY(callFrame->argumentCount() < 1))
6538 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
6539 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
6540 auto texture = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument0.value());
6541 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
6542 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
6543 InspectorCanvasCallTracer::recordAction(impl, "activeTexture"_s, { InspectorCanvasCallTracer::processArgument(impl, texture) });
6544 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.activeTexture(WTFMove(texture)); })));
6545}
6546
6547JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_activeTexture, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
6548{
6549 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_activeTextureBody>(*lexicalGlobalObject, *callFrame, "activeTexture");
6550}
6551
6552#endif
6553
6554#if ENABLE(WEBGL)
6555static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_attachShaderBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
6556{
6557 auto& vm = JSC::getVM(lexicalGlobalObject);
6558 auto throwScope = DECLARE_THROW_SCOPE(vm);
6559 UNUSED_PARAM(throwScope);
6560 UNUSED_PARAM(callFrame);
6561 auto& impl = castedThis->wrapped();
6562 if (UNLIKELY(callFrame->argumentCount() < 2))
6563 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
6564 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
6565 auto program = convert<IDLInterface<WebGLProgram>>(*lexicalGlobalObject, argument0.value(), [](JSC::JSGlobalObject& lexicalGlobalObject, JSC::ThrowScope& scope) { throwArgumentTypeError(lexicalGlobalObject, scope, 0, "program", "WebGLRenderingContext", "attachShader", "WebGLProgram"); });
6566 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
6567 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
6568 auto shader = convert<IDLInterface<WebGLShader>>(*lexicalGlobalObject, argument1.value(), [](JSC::JSGlobalObject& lexicalGlobalObject, JSC::ThrowScope& scope) { throwArgumentTypeError(lexicalGlobalObject, scope, 1, "shader", "WebGLRenderingContext", "attachShader", "WebGLShader"); });
6569 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
6570 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
6571 InspectorCanvasCallTracer::recordAction(impl, "attachShader"_s, { InspectorCanvasCallTracer::processArgument(impl, program), InspectorCanvasCallTracer::processArgument(impl, shader) });
6572 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.attachShader(*program, *shader); })));
6573}
6574
6575JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_attachShader, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
6576{
6577 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_attachShaderBody>(*lexicalGlobalObject, *callFrame, "attachShader");
6578}
6579
6580#endif
6581
6582#if ENABLE(WEBGL)
6583static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_bindAttribLocationBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
6584{
6585 auto& vm = JSC::getVM(lexicalGlobalObject);
6586 auto throwScope = DECLARE_THROW_SCOPE(vm);
6587 UNUSED_PARAM(throwScope);
6588 UNUSED_PARAM(callFrame);
6589 auto& impl = castedThis->wrapped();
6590 if (UNLIKELY(callFrame->argumentCount() < 3))
6591 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
6592 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
6593 auto program = convert<IDLInterface<WebGLProgram>>(*lexicalGlobalObject, argument0.value(), [](JSC::JSGlobalObject& lexicalGlobalObject, JSC::ThrowScope& scope) { throwArgumentTypeError(lexicalGlobalObject, scope, 0, "program", "WebGLRenderingContext", "bindAttribLocation", "WebGLProgram"); });
6594 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
6595 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
6596 auto index = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument1.value());
6597 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
6598 EnsureStillAliveScope argument2 = callFrame->uncheckedArgument(2);
6599 auto name = convert<IDLDOMString>(*lexicalGlobalObject, argument2.value());
6600 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
6601 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
6602 InspectorCanvasCallTracer::recordAction(impl, "bindAttribLocation"_s, { InspectorCanvasCallTracer::processArgument(impl, program), InspectorCanvasCallTracer::processArgument(impl, index), InspectorCanvasCallTracer::processArgument(impl, name) });
6603 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.bindAttribLocation(*program, WTFMove(index), WTFMove(name)); })));
6604}
6605
6606JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_bindAttribLocation, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
6607{
6608 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_bindAttribLocationBody>(*lexicalGlobalObject, *callFrame, "bindAttribLocation");
6609}
6610
6611#endif
6612
6613#if ENABLE(WEBGL)
6614static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_bindBufferBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
6615{
6616 auto& vm = JSC::getVM(lexicalGlobalObject);
6617 auto throwScope = DECLARE_THROW_SCOPE(vm);
6618 UNUSED_PARAM(throwScope);
6619 UNUSED_PARAM(callFrame);
6620 auto& impl = castedThis->wrapped();
6621 if (UNLIKELY(callFrame->argumentCount() < 2))
6622 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
6623 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
6624 auto target = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument0.value());
6625 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
6626 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
6627 auto buffer = convert<IDLNullable<IDLInterface<WebGLBuffer>>>(*lexicalGlobalObject, argument1.value(), [](JSC::JSGlobalObject& lexicalGlobalObject, JSC::ThrowScope& scope) { throwArgumentTypeError(lexicalGlobalObject, scope, 1, "buffer", "WebGLRenderingContext", "bindBuffer", "WebGLBuffer"); });
6628 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
6629 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
6630 InspectorCanvasCallTracer::recordAction(impl, "bindBuffer"_s, { InspectorCanvasCallTracer::processArgument(impl, target), InspectorCanvasCallTracer::processArgument(impl, buffer) });
6631 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.bindBuffer(WTFMove(target), WTFMove(buffer)); })));
6632}
6633
6634JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_bindBuffer, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
6635{
6636 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_bindBufferBody>(*lexicalGlobalObject, *callFrame, "bindBuffer");
6637}
6638
6639#endif
6640
6641#if ENABLE(WEBGL)
6642static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_bindFramebufferBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
6643{
6644 auto& vm = JSC::getVM(lexicalGlobalObject);
6645 auto throwScope = DECLARE_THROW_SCOPE(vm);
6646 UNUSED_PARAM(throwScope);
6647 UNUSED_PARAM(callFrame);
6648 auto& impl = castedThis->wrapped();
6649 if (UNLIKELY(callFrame->argumentCount() < 2))
6650 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
6651 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
6652 auto target = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument0.value());
6653 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
6654 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
6655 auto framebuffer = convert<IDLNullable<IDLInterface<WebGLFramebuffer>>>(*lexicalGlobalObject, argument1.value(), [](JSC::JSGlobalObject& lexicalGlobalObject, JSC::ThrowScope& scope) { throwArgumentTypeError(lexicalGlobalObject, scope, 1, "framebuffer", "WebGLRenderingContext", "bindFramebuffer", "WebGLFramebuffer"); });
6656 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
6657 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
6658 InspectorCanvasCallTracer::recordAction(impl, "bindFramebuffer"_s, { InspectorCanvasCallTracer::processArgument(impl, target), InspectorCanvasCallTracer::processArgument(impl, framebuffer) });
6659 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.bindFramebuffer(WTFMove(target), WTFMove(framebuffer)); })));
6660}
6661
6662JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_bindFramebuffer, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
6663{
6664 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_bindFramebufferBody>(*lexicalGlobalObject, *callFrame, "bindFramebuffer");
6665}
6666
6667#endif
6668
6669#if ENABLE(WEBGL)
6670static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_bindRenderbufferBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
6671{
6672 auto& vm = JSC::getVM(lexicalGlobalObject);
6673 auto throwScope = DECLARE_THROW_SCOPE(vm);
6674 UNUSED_PARAM(throwScope);
6675 UNUSED_PARAM(callFrame);
6676 auto& impl = castedThis->wrapped();
6677 if (UNLIKELY(callFrame->argumentCount() < 2))
6678 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
6679 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
6680 auto target = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument0.value());
6681 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
6682 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
6683 auto renderbuffer = convert<IDLNullable<IDLInterface<WebGLRenderbuffer>>>(*lexicalGlobalObject, argument1.value(), [](JSC::JSGlobalObject& lexicalGlobalObject, JSC::ThrowScope& scope) { throwArgumentTypeError(lexicalGlobalObject, scope, 1, "renderbuffer", "WebGLRenderingContext", "bindRenderbuffer", "WebGLRenderbuffer"); });
6684 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
6685 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
6686 InspectorCanvasCallTracer::recordAction(impl, "bindRenderbuffer"_s, { InspectorCanvasCallTracer::processArgument(impl, target), InspectorCanvasCallTracer::processArgument(impl, renderbuffer) });
6687 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.bindRenderbuffer(WTFMove(target), WTFMove(renderbuffer)); })));
6688}
6689
6690JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_bindRenderbuffer, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
6691{
6692 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_bindRenderbufferBody>(*lexicalGlobalObject, *callFrame, "bindRenderbuffer");
6693}
6694
6695#endif
6696
6697#if ENABLE(WEBGL)
6698static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_bindTextureBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
6699{
6700 auto& vm = JSC::getVM(lexicalGlobalObject);
6701 auto throwScope = DECLARE_THROW_SCOPE(vm);
6702 UNUSED_PARAM(throwScope);
6703 UNUSED_PARAM(callFrame);
6704 auto& impl = castedThis->wrapped();
6705 if (UNLIKELY(callFrame->argumentCount() < 2))
6706 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
6707 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
6708 auto target = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument0.value());
6709 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
6710 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
6711 auto texture = convert<IDLNullable<IDLInterface<WebGLTexture>>>(*lexicalGlobalObject, argument1.value(), [](JSC::JSGlobalObject& lexicalGlobalObject, JSC::ThrowScope& scope) { throwArgumentTypeError(lexicalGlobalObject, scope, 1, "texture", "WebGLRenderingContext", "bindTexture", "WebGLTexture"); });
6712 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
6713 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
6714 InspectorCanvasCallTracer::recordAction(impl, "bindTexture"_s, { InspectorCanvasCallTracer::processArgument(impl, target), InspectorCanvasCallTracer::processArgument(impl, texture) });
6715 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.bindTexture(WTFMove(target), WTFMove(texture)); })));
6716}
6717
6718JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_bindTexture, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
6719{
6720 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_bindTextureBody>(*lexicalGlobalObject, *callFrame, "bindTexture");
6721}
6722
6723#endif
6724
6725#if ENABLE(WEBGL)
6726static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_blendColorBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
6727{
6728 auto& vm = JSC::getVM(lexicalGlobalObject);
6729 auto throwScope = DECLARE_THROW_SCOPE(vm);
6730 UNUSED_PARAM(throwScope);
6731 UNUSED_PARAM(callFrame);
6732 auto& impl = castedThis->wrapped();
6733 if (UNLIKELY(callFrame->argumentCount() < 4))
6734 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
6735 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
6736 auto red = convert<IDLUnrestrictedFloat>(*lexicalGlobalObject, argument0.value());
6737 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
6738 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
6739 auto green = convert<IDLUnrestrictedFloat>(*lexicalGlobalObject, argument1.value());
6740 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
6741 EnsureStillAliveScope argument2 = callFrame->uncheckedArgument(2);
6742 auto blue = convert<IDLUnrestrictedFloat>(*lexicalGlobalObject, argument2.value());
6743 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
6744 EnsureStillAliveScope argument3 = callFrame->uncheckedArgument(3);
6745 auto alpha = convert<IDLUnrestrictedFloat>(*lexicalGlobalObject, argument3.value());
6746 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
6747 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
6748 InspectorCanvasCallTracer::recordAction(impl, "blendColor"_s, { InspectorCanvasCallTracer::processArgument(impl, red), InspectorCanvasCallTracer::processArgument(impl, green), InspectorCanvasCallTracer::processArgument(impl, blue), InspectorCanvasCallTracer::processArgument(impl, alpha) });
6749 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.blendColor(WTFMove(red), WTFMove(green), WTFMove(blue), WTFMove(alpha)); })));
6750}
6751
6752JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_blendColor, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
6753{
6754 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_blendColorBody>(*lexicalGlobalObject, *callFrame, "blendColor");
6755}
6756
6757#endif
6758
6759#if ENABLE(WEBGL)
6760static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_blendEquationBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
6761{
6762 auto& vm = JSC::getVM(lexicalGlobalObject);
6763 auto throwScope = DECLARE_THROW_SCOPE(vm);
6764 UNUSED_PARAM(throwScope);
6765 UNUSED_PARAM(callFrame);
6766 auto& impl = castedThis->wrapped();
6767 if (UNLIKELY(callFrame->argumentCount() < 1))
6768 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
6769 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
6770 auto mode = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument0.value());
6771 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
6772 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
6773 InspectorCanvasCallTracer::recordAction(impl, "blendEquation"_s, { InspectorCanvasCallTracer::processArgument(impl, mode) });
6774 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.blendEquation(WTFMove(mode)); })));
6775}
6776
6777JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_blendEquation, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
6778{
6779 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_blendEquationBody>(*lexicalGlobalObject, *callFrame, "blendEquation");
6780}
6781
6782#endif
6783
6784#if ENABLE(WEBGL)
6785static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_blendEquationSeparateBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
6786{
6787 auto& vm = JSC::getVM(lexicalGlobalObject);
6788 auto throwScope = DECLARE_THROW_SCOPE(vm);
6789 UNUSED_PARAM(throwScope);
6790 UNUSED_PARAM(callFrame);
6791 auto& impl = castedThis->wrapped();
6792 if (UNLIKELY(callFrame->argumentCount() < 2))
6793 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
6794 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
6795 auto modeRGB = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument0.value());
6796 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
6797 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
6798 auto modeAlpha = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument1.value());
6799 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
6800 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
6801 InspectorCanvasCallTracer::recordAction(impl, "blendEquationSeparate"_s, { InspectorCanvasCallTracer::processArgument(impl, modeRGB), InspectorCanvasCallTracer::processArgument(impl, modeAlpha) });
6802 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.blendEquationSeparate(WTFMove(modeRGB), WTFMove(modeAlpha)); })));
6803}
6804
6805JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_blendEquationSeparate, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
6806{
6807 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_blendEquationSeparateBody>(*lexicalGlobalObject, *callFrame, "blendEquationSeparate");
6808}
6809
6810#endif
6811
6812#if ENABLE(WEBGL)
6813static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_blendFuncBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
6814{
6815 auto& vm = JSC::getVM(lexicalGlobalObject);
6816 auto throwScope = DECLARE_THROW_SCOPE(vm);
6817 UNUSED_PARAM(throwScope);
6818 UNUSED_PARAM(callFrame);
6819 auto& impl = castedThis->wrapped();
6820 if (UNLIKELY(callFrame->argumentCount() < 2))
6821 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
6822 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
6823 auto sfactor = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument0.value());
6824 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
6825 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
6826 auto dfactor = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument1.value());
6827 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
6828 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
6829 InspectorCanvasCallTracer::recordAction(impl, "blendFunc"_s, { InspectorCanvasCallTracer::processArgument(impl, sfactor), InspectorCanvasCallTracer::processArgument(impl, dfactor) });
6830 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.blendFunc(WTFMove(sfactor), WTFMove(dfactor)); })));
6831}
6832
6833JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_blendFunc, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
6834{
6835 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_blendFuncBody>(*lexicalGlobalObject, *callFrame, "blendFunc");
6836}
6837
6838#endif
6839
6840#if ENABLE(WEBGL)
6841static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_blendFuncSeparateBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
6842{
6843 auto& vm = JSC::getVM(lexicalGlobalObject);
6844 auto throwScope = DECLARE_THROW_SCOPE(vm);
6845 UNUSED_PARAM(throwScope);
6846 UNUSED_PARAM(callFrame);
6847 auto& impl = castedThis->wrapped();
6848 if (UNLIKELY(callFrame->argumentCount() < 4))
6849 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
6850 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
6851 auto srcRGB = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument0.value());
6852 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
6853 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
6854 auto dstRGB = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument1.value());
6855 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
6856 EnsureStillAliveScope argument2 = callFrame->uncheckedArgument(2);
6857 auto srcAlpha = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument2.value());
6858 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
6859 EnsureStillAliveScope argument3 = callFrame->uncheckedArgument(3);
6860 auto dstAlpha = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument3.value());
6861 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
6862 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
6863 InspectorCanvasCallTracer::recordAction(impl, "blendFuncSeparate"_s, { InspectorCanvasCallTracer::processArgument(impl, srcRGB), InspectorCanvasCallTracer::processArgument(impl, dstRGB), InspectorCanvasCallTracer::processArgument(impl, srcAlpha), InspectorCanvasCallTracer::processArgument(impl, dstAlpha) });
6864 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.blendFuncSeparate(WTFMove(srcRGB), WTFMove(dstRGB), WTFMove(srcAlpha), WTFMove(dstAlpha)); })));
6865}
6866
6867JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_blendFuncSeparate, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
6868{
6869 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_blendFuncSeparateBody>(*lexicalGlobalObject, *callFrame, "blendFuncSeparate");
6870}
6871
6872#endif
6873
6874#if ENABLE(WEBGL)
6875static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_bufferData1Body(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
6876{
6877 auto& vm = JSC::getVM(lexicalGlobalObject);
6878 auto throwScope = DECLARE_THROW_SCOPE(vm);
6879 UNUSED_PARAM(throwScope);
6880 UNUSED_PARAM(callFrame);
6881 auto& impl = castedThis->wrapped();
6882 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
6883 auto target = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument0.value());
6884 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
6885 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
6886 auto data = convert<IDLNullable<IDLUnion<IDLAllowSharedAdaptor<IDLArrayBuffer>, IDLAllowSharedAdaptor<IDLArrayBufferView>>>>(*lexicalGlobalObject, argument1.value());
6887 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
6888 EnsureStillAliveScope argument2 = callFrame->uncheckedArgument(2);
6889 auto usage = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument2.value());
6890 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
6891 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
6892 InspectorCanvasCallTracer::recordAction(impl, "bufferData"_s, { InspectorCanvasCallTracer::processArgument(impl, target), InspectorCanvasCallTracer::processArgument(impl, data), InspectorCanvasCallTracer::processArgument(impl, usage) });
6893 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.bufferData(WTFMove(target), WTFMove(data), WTFMove(usage)); })));
6894}
6895
6896#endif
6897
6898#if ENABLE(WEBGL)
6899static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_bufferData2Body(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
6900{
6901 auto& vm = JSC::getVM(lexicalGlobalObject);
6902 auto throwScope = DECLARE_THROW_SCOPE(vm);
6903 UNUSED_PARAM(throwScope);
6904 UNUSED_PARAM(callFrame);
6905 auto& impl = castedThis->wrapped();
6906 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
6907 auto target = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument0.value());
6908 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
6909 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
6910 auto size = convert<IDLLongLong>(*lexicalGlobalObject, argument1.value());
6911 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
6912 EnsureStillAliveScope argument2 = callFrame->uncheckedArgument(2);
6913 auto usage = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument2.value());
6914 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
6915 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
6916 InspectorCanvasCallTracer::recordAction(impl, "bufferData"_s, { InspectorCanvasCallTracer::processArgument(impl, target), InspectorCanvasCallTracer::processArgument(impl, size), InspectorCanvasCallTracer::processArgument(impl, usage) });
6917 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.bufferData(WTFMove(target), WTFMove(size), WTFMove(usage)); })));
6918}
6919
6920#endif
6921
6922#if ENABLE(WEBGL)
6923
6924static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_bufferDataOverloadDispatcher(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
6925{
6926 auto& vm = JSC::getVM(lexicalGlobalObject);
6927 auto throwScope = DECLARE_THROW_SCOPE(vm);
6928 UNUSED_PARAM(throwScope);
6929 UNUSED_PARAM(callFrame);
6930 size_t argsCount = std::min<size_t>(3, callFrame->argumentCount());
6931 if (argsCount == 3) {
6932 JSValue distinguishingArg = callFrame->uncheckedArgument(1);
6933#if ENABLE(WEBGL)
6934 if (distinguishingArg.isUndefinedOrNull())
6935 RELEASE_AND_RETURN(throwScope, (jsWebGLRenderingContextPrototypeFunction_bufferData1Body(lexicalGlobalObject, callFrame, castedThis)));
6936#endif
6937#if ENABLE(WEBGL)
6938 if (distinguishingArg.isObject() && asObject(distinguishingArg)->inherits<JSArrayBuffer>(vm))
6939 RELEASE_AND_RETURN(throwScope, (jsWebGLRenderingContextPrototypeFunction_bufferData1Body(lexicalGlobalObject, callFrame, castedThis)));
6940#endif
6941#if ENABLE(WEBGL)
6942 if (distinguishingArg.isObject() && asObject(distinguishingArg)->inherits<JSArrayBufferView>(vm))
6943 RELEASE_AND_RETURN(throwScope, (jsWebGLRenderingContextPrototypeFunction_bufferData1Body(lexicalGlobalObject, callFrame, castedThis)));
6944#endif
6945#if ENABLE(WEBGL)
6946 if (distinguishingArg.isNumber())
6947 RELEASE_AND_RETURN(throwScope, (jsWebGLRenderingContextPrototypeFunction_bufferData2Body(lexicalGlobalObject, callFrame, castedThis)));
6948#endif
6949#if ENABLE(WEBGL)
6950 RELEASE_AND_RETURN(throwScope, (jsWebGLRenderingContextPrototypeFunction_bufferData2Body(lexicalGlobalObject, callFrame, castedThis)));
6951#endif
6952 }
6953 return argsCount < 3 ? throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject)) : throwVMTypeError(lexicalGlobalObject, throwScope);
6954}
6955
6956JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_bufferData, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
6957{
6958 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_bufferDataOverloadDispatcher>(*lexicalGlobalObject, *callFrame, "bufferData");
6959}
6960
6961#endif
6962
6963#if ENABLE(WEBGL)
6964static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_bufferSubDataBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
6965{
6966 auto& vm = JSC::getVM(lexicalGlobalObject);
6967 auto throwScope = DECLARE_THROW_SCOPE(vm);
6968 UNUSED_PARAM(throwScope);
6969 UNUSED_PARAM(callFrame);
6970 auto& impl = castedThis->wrapped();
6971 if (UNLIKELY(callFrame->argumentCount() < 3))
6972 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
6973 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
6974 auto target = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument0.value());
6975 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
6976 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
6977 auto offset = convert<IDLLongLong>(*lexicalGlobalObject, argument1.value());
6978 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
6979 EnsureStillAliveScope argument2 = callFrame->uncheckedArgument(2);
6980 auto data = convert<IDLUnion<IDLAllowSharedAdaptor<IDLArrayBuffer>, IDLAllowSharedAdaptor<IDLArrayBufferView>>>(*lexicalGlobalObject, argument2.value());
6981 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
6982 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
6983 InspectorCanvasCallTracer::recordAction(impl, "bufferSubData"_s, { InspectorCanvasCallTracer::processArgument(impl, target), InspectorCanvasCallTracer::processArgument(impl, offset), InspectorCanvasCallTracer::processArgument(impl, data) });
6984 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.bufferSubData(WTFMove(target), WTFMove(offset), WTFMove(data)); })));
6985}
6986
6987JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_bufferSubData, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
6988{
6989 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_bufferSubDataBody>(*lexicalGlobalObject, *callFrame, "bufferSubData");
6990}
6991
6992#endif
6993
6994#if ENABLE(WEBGL)
6995static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_checkFramebufferStatusBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
6996{
6997 auto& vm = JSC::getVM(lexicalGlobalObject);
6998 auto throwScope = DECLARE_THROW_SCOPE(vm);
6999 UNUSED_PARAM(throwScope);
7000 UNUSED_PARAM(callFrame);
7001 auto& impl = castedThis->wrapped();
7002 if (UNLIKELY(callFrame->argumentCount() < 1))
7003 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
7004 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
7005 auto target = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument0.value());
7006 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7007 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
7008 InspectorCanvasCallTracer::recordAction(impl, "checkFramebufferStatus"_s, { InspectorCanvasCallTracer::processArgument(impl, target) });
7009 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUnsignedLong>(*lexicalGlobalObject, throwScope, impl.checkFramebufferStatus(WTFMove(target)))));
7010}
7011
7012JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_checkFramebufferStatus, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
7013{
7014 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_checkFramebufferStatusBody>(*lexicalGlobalObject, *callFrame, "checkFramebufferStatus");
7015}
7016
7017#endif
7018
7019#if ENABLE(WEBGL)
7020static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_clearBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
7021{
7022 auto& vm = JSC::getVM(lexicalGlobalObject);
7023 auto throwScope = DECLARE_THROW_SCOPE(vm);
7024 UNUSED_PARAM(throwScope);
7025 UNUSED_PARAM(callFrame);
7026 auto& impl = castedThis->wrapped();
7027 if (UNLIKELY(callFrame->argumentCount() < 1))
7028 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
7029 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
7030 auto mask = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument0.value());
7031 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7032 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
7033 InspectorCanvasCallTracer::recordAction(impl, "clear"_s, { InspectorCanvasCallTracer::processArgument(impl, mask) });
7034 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.clear(WTFMove(mask)); })));
7035}
7036
7037JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_clear, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
7038{
7039 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_clearBody>(*lexicalGlobalObject, *callFrame, "clear");
7040}
7041
7042#endif
7043
7044#if ENABLE(WEBGL)
7045static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_clearColorBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
7046{
7047 auto& vm = JSC::getVM(lexicalGlobalObject);
7048 auto throwScope = DECLARE_THROW_SCOPE(vm);
7049 UNUSED_PARAM(throwScope);
7050 UNUSED_PARAM(callFrame);
7051 auto& impl = castedThis->wrapped();
7052 if (UNLIKELY(callFrame->argumentCount() < 4))
7053 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
7054 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
7055 auto red = convert<IDLUnrestrictedFloat>(*lexicalGlobalObject, argument0.value());
7056 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7057 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
7058 auto green = convert<IDLUnrestrictedFloat>(*lexicalGlobalObject, argument1.value());
7059 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7060 EnsureStillAliveScope argument2 = callFrame->uncheckedArgument(2);
7061 auto blue = convert<IDLUnrestrictedFloat>(*lexicalGlobalObject, argument2.value());
7062 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7063 EnsureStillAliveScope argument3 = callFrame->uncheckedArgument(3);
7064 auto alpha = convert<IDLUnrestrictedFloat>(*lexicalGlobalObject, argument3.value());
7065 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7066 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
7067 InspectorCanvasCallTracer::recordAction(impl, "clearColor"_s, { InspectorCanvasCallTracer::processArgument(impl, red), InspectorCanvasCallTracer::processArgument(impl, green), InspectorCanvasCallTracer::processArgument(impl, blue), InspectorCanvasCallTracer::processArgument(impl, alpha) });
7068 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.clearColor(WTFMove(red), WTFMove(green), WTFMove(blue), WTFMove(alpha)); })));
7069}
7070
7071JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_clearColor, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
7072{
7073 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_clearColorBody>(*lexicalGlobalObject, *callFrame, "clearColor");
7074}
7075
7076#endif
7077
7078#if ENABLE(WEBGL)
7079static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_clearDepthBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
7080{
7081 auto& vm = JSC::getVM(lexicalGlobalObject);
7082 auto throwScope = DECLARE_THROW_SCOPE(vm);
7083 UNUSED_PARAM(throwScope);
7084 UNUSED_PARAM(callFrame);
7085 auto& impl = castedThis->wrapped();
7086 if (UNLIKELY(callFrame->argumentCount() < 1))
7087 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
7088 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
7089 auto depth = convert<IDLUnrestrictedFloat>(*lexicalGlobalObject, argument0.value());
7090 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7091 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
7092 InspectorCanvasCallTracer::recordAction(impl, "clearDepth"_s, { InspectorCanvasCallTracer::processArgument(impl, depth) });
7093 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.clearDepth(WTFMove(depth)); })));
7094}
7095
7096JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_clearDepth, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
7097{
7098 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_clearDepthBody>(*lexicalGlobalObject, *callFrame, "clearDepth");
7099}
7100
7101#endif
7102
7103#if ENABLE(WEBGL)
7104static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_clearStencilBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
7105{
7106 auto& vm = JSC::getVM(lexicalGlobalObject);
7107 auto throwScope = DECLARE_THROW_SCOPE(vm);
7108 UNUSED_PARAM(throwScope);
7109 UNUSED_PARAM(callFrame);
7110 auto& impl = castedThis->wrapped();
7111 if (UNLIKELY(callFrame->argumentCount() < 1))
7112 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
7113 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
7114 auto s = convert<IDLLong>(*lexicalGlobalObject, argument0.value());
7115 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7116 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
7117 InspectorCanvasCallTracer::recordAction(impl, "clearStencil"_s, { InspectorCanvasCallTracer::processArgument(impl, s) });
7118 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.clearStencil(WTFMove(s)); })));
7119}
7120
7121JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_clearStencil, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
7122{
7123 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_clearStencilBody>(*lexicalGlobalObject, *callFrame, "clearStencil");
7124}
7125
7126#endif
7127
7128#if ENABLE(WEBGL)
7129static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_colorMaskBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
7130{
7131 auto& vm = JSC::getVM(lexicalGlobalObject);
7132 auto throwScope = DECLARE_THROW_SCOPE(vm);
7133 UNUSED_PARAM(throwScope);
7134 UNUSED_PARAM(callFrame);
7135 auto& impl = castedThis->wrapped();
7136 if (UNLIKELY(callFrame->argumentCount() < 4))
7137 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
7138 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
7139 auto red = convert<IDLBoolean>(*lexicalGlobalObject, argument0.value());
7140 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7141 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
7142 auto green = convert<IDLBoolean>(*lexicalGlobalObject, argument1.value());
7143 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7144 EnsureStillAliveScope argument2 = callFrame->uncheckedArgument(2);
7145 auto blue = convert<IDLBoolean>(*lexicalGlobalObject, argument2.value());
7146 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7147 EnsureStillAliveScope argument3 = callFrame->uncheckedArgument(3);
7148 auto alpha = convert<IDLBoolean>(*lexicalGlobalObject, argument3.value());
7149 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7150 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
7151 InspectorCanvasCallTracer::recordAction(impl, "colorMask"_s, { InspectorCanvasCallTracer::processArgument(impl, red), InspectorCanvasCallTracer::processArgument(impl, green), InspectorCanvasCallTracer::processArgument(impl, blue), InspectorCanvasCallTracer::processArgument(impl, alpha) });
7152 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.colorMask(WTFMove(red), WTFMove(green), WTFMove(blue), WTFMove(alpha)); })));
7153}
7154
7155JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_colorMask, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
7156{
7157 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_colorMaskBody>(*lexicalGlobalObject, *callFrame, "colorMask");
7158}
7159
7160#endif
7161
7162#if ENABLE(WEBGL)
7163static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_compileShaderBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
7164{
7165 auto& vm = JSC::getVM(lexicalGlobalObject);
7166 auto throwScope = DECLARE_THROW_SCOPE(vm);
7167 UNUSED_PARAM(throwScope);
7168 UNUSED_PARAM(callFrame);
7169 auto& impl = castedThis->wrapped();
7170 if (UNLIKELY(callFrame->argumentCount() < 1))
7171 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
7172 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
7173 auto shader = convert<IDLInterface<WebGLShader>>(*lexicalGlobalObject, argument0.value(), [](JSC::JSGlobalObject& lexicalGlobalObject, JSC::ThrowScope& scope) { throwArgumentTypeError(lexicalGlobalObject, scope, 0, "shader", "WebGLRenderingContext", "compileShader", "WebGLShader"); });
7174 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7175 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
7176 InspectorCanvasCallTracer::recordAction(impl, "compileShader"_s, { InspectorCanvasCallTracer::processArgument(impl, shader) });
7177 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.compileShader(*shader); })));
7178}
7179
7180JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_compileShader, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
7181{
7182 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_compileShaderBody>(*lexicalGlobalObject, *callFrame, "compileShader");
7183}
7184
7185#endif
7186
7187#if ENABLE(WEBGL)
7188static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_texImage2D1Body(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
7189{
7190 auto& vm = JSC::getVM(lexicalGlobalObject);
7191 auto throwScope = DECLARE_THROW_SCOPE(vm);
7192 UNUSED_PARAM(throwScope);
7193 UNUSED_PARAM(callFrame);
7194 auto& impl = castedThis->wrapped();
7195 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
7196 auto target = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument0.value());
7197 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7198 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
7199 auto level = convert<IDLLong>(*lexicalGlobalObject, argument1.value());
7200 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7201 EnsureStillAliveScope argument2 = callFrame->uncheckedArgument(2);
7202 auto internalformat = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument2.value());
7203 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7204 EnsureStillAliveScope argument3 = callFrame->uncheckedArgument(3);
7205 auto width = convert<IDLLong>(*lexicalGlobalObject, argument3.value());
7206 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7207 EnsureStillAliveScope argument4 = callFrame->uncheckedArgument(4);
7208 auto height = convert<IDLLong>(*lexicalGlobalObject, argument4.value());
7209 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7210 EnsureStillAliveScope argument5 = callFrame->uncheckedArgument(5);
7211 auto border = convert<IDLLong>(*lexicalGlobalObject, argument5.value());
7212 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7213 EnsureStillAliveScope argument6 = callFrame->uncheckedArgument(6);
7214 auto format = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument6.value());
7215 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7216 EnsureStillAliveScope argument7 = callFrame->uncheckedArgument(7);
7217 auto type = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument7.value());
7218 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7219 EnsureStillAliveScope argument8 = callFrame->uncheckedArgument(8);
7220 auto pixels = convert<IDLNullable<IDLAllowSharedAdaptor<IDLArrayBufferView>>>(*lexicalGlobalObject, argument8.value(), [](JSC::JSGlobalObject& lexicalGlobalObject, JSC::ThrowScope& scope) { throwArgumentTypeError(lexicalGlobalObject, scope, 8, "pixels", "WebGLRenderingContext", "texImage2D", "ArrayBufferView"); });
7221 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7222 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
7223 InspectorCanvasCallTracer::recordAction(impl, "texImage2D"_s, { InspectorCanvasCallTracer::processArgument(impl, target), InspectorCanvasCallTracer::processArgument(impl, level), InspectorCanvasCallTracer::processArgument(impl, internalformat), InspectorCanvasCallTracer::processArgument(impl, width), InspectorCanvasCallTracer::processArgument(impl, height), InspectorCanvasCallTracer::processArgument(impl, border), InspectorCanvasCallTracer::processArgument(impl, format), InspectorCanvasCallTracer::processArgument(impl, type), InspectorCanvasCallTracer::processArgument(impl, pixels) });
7224 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.texImage2D(WTFMove(target), WTFMove(level), WTFMove(internalformat), WTFMove(width), WTFMove(height), WTFMove(border), WTFMove(format), WTFMove(type), WTFMove(pixels)); })));
7225}
7226
7227#endif
7228
7229#if ENABLE(WEBGL)
7230static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_texImage2D2Body(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
7231{
7232 auto& vm = JSC::getVM(lexicalGlobalObject);
7233 auto throwScope = DECLARE_THROW_SCOPE(vm);
7234 UNUSED_PARAM(throwScope);
7235 UNUSED_PARAM(callFrame);
7236 auto& impl = castedThis->wrapped();
7237 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
7238 auto target = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument0.value());
7239 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7240 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
7241 auto level = convert<IDLLong>(*lexicalGlobalObject, argument1.value());
7242 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7243 EnsureStillAliveScope argument2 = callFrame->uncheckedArgument(2);
7244 auto internalformat = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument2.value());
7245 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7246 EnsureStillAliveScope argument3 = callFrame->uncheckedArgument(3);
7247 auto format = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument3.value());
7248 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7249 EnsureStillAliveScope argument4 = callFrame->uncheckedArgument(4);
7250 auto type = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument4.value());
7251 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7252 EnsureStillAliveScope argument5 = callFrame->uncheckedArgument(5);
7253 auto source = convert<IDLUnion<IDLInterface<ImageBitmap>, IDLInterface<ImageData>, IDLInterface<HTMLImageElement>, IDLInterface<HTMLCanvasElement>, IDLInterface<HTMLVideoElement>>>(*lexicalGlobalObject, argument5.value());
7254 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7255 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
7256 InspectorCanvasCallTracer::recordAction(impl, "texImage2D"_s, { InspectorCanvasCallTracer::processArgument(impl, target), InspectorCanvasCallTracer::processArgument(impl, level), InspectorCanvasCallTracer::processArgument(impl, internalformat), InspectorCanvasCallTracer::processArgument(impl, format), InspectorCanvasCallTracer::processArgument(impl, type), InspectorCanvasCallTracer::processArgument(impl, source) });
7257 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.texImage2D(WTFMove(target), WTFMove(level), WTFMove(internalformat), WTFMove(format), WTFMove(type), WTFMove(source)); })));
7258}
7259
7260#endif
7261
7262#if ENABLE(WEBGL)
7263
7264static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_texImage2DOverloadDispatcher(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
7265{
7266 auto& vm = JSC::getVM(lexicalGlobalObject);
7267 auto throwScope = DECLARE_THROW_SCOPE(vm);
7268 UNUSED_PARAM(throwScope);
7269 UNUSED_PARAM(callFrame);
7270 size_t argsCount = std::min<size_t>(9, callFrame->argumentCount());
7271 if (argsCount == 6) {
7272#if ENABLE(WEBGL)
7273 RELEASE_AND_RETURN(throwScope, (jsWebGLRenderingContextPrototypeFunction_texImage2D2Body(lexicalGlobalObject, callFrame, castedThis)));
7274#endif
7275 }
7276 if (argsCount == 9) {
7277#if ENABLE(WEBGL)
7278 RELEASE_AND_RETURN(throwScope, (jsWebGLRenderingContextPrototypeFunction_texImage2D1Body(lexicalGlobalObject, callFrame, castedThis)));
7279#endif
7280 }
7281 return argsCount < 6 ? throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject)) : throwVMTypeError(lexicalGlobalObject, throwScope);
7282}
7283
7284JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_texImage2D, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
7285{
7286 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_texImage2DOverloadDispatcher>(*lexicalGlobalObject, *callFrame, "texImage2D");
7287}
7288
7289#endif
7290
7291#if ENABLE(WEBGL)
7292static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_texSubImage2D1Body(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
7293{
7294 auto& vm = JSC::getVM(lexicalGlobalObject);
7295 auto throwScope = DECLARE_THROW_SCOPE(vm);
7296 UNUSED_PARAM(throwScope);
7297 UNUSED_PARAM(callFrame);
7298 auto& impl = castedThis->wrapped();
7299 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
7300 auto target = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument0.value());
7301 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7302 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
7303 auto level = convert<IDLLong>(*lexicalGlobalObject, argument1.value());
7304 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7305 EnsureStillAliveScope argument2 = callFrame->uncheckedArgument(2);
7306 auto xoffset = convert<IDLLong>(*lexicalGlobalObject, argument2.value());
7307 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7308 EnsureStillAliveScope argument3 = callFrame->uncheckedArgument(3);
7309 auto yoffset = convert<IDLLong>(*lexicalGlobalObject, argument3.value());
7310 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7311 EnsureStillAliveScope argument4 = callFrame->uncheckedArgument(4);
7312 auto width = convert<IDLLong>(*lexicalGlobalObject, argument4.value());
7313 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7314 EnsureStillAliveScope argument5 = callFrame->uncheckedArgument(5);
7315 auto height = convert<IDLLong>(*lexicalGlobalObject, argument5.value());
7316 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7317 EnsureStillAliveScope argument6 = callFrame->uncheckedArgument(6);
7318 auto format = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument6.value());
7319 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7320 EnsureStillAliveScope argument7 = callFrame->uncheckedArgument(7);
7321 auto type = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument7.value());
7322 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7323 EnsureStillAliveScope argument8 = callFrame->uncheckedArgument(8);
7324 auto pixels = convert<IDLNullable<IDLAllowSharedAdaptor<IDLArrayBufferView>>>(*lexicalGlobalObject, argument8.value(), [](JSC::JSGlobalObject& lexicalGlobalObject, JSC::ThrowScope& scope) { throwArgumentTypeError(lexicalGlobalObject, scope, 8, "pixels", "WebGLRenderingContext", "texSubImage2D", "ArrayBufferView"); });
7325 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7326 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
7327 InspectorCanvasCallTracer::recordAction(impl, "texSubImage2D"_s, { InspectorCanvasCallTracer::processArgument(impl, target), InspectorCanvasCallTracer::processArgument(impl, level), InspectorCanvasCallTracer::processArgument(impl, xoffset), InspectorCanvasCallTracer::processArgument(impl, yoffset), InspectorCanvasCallTracer::processArgument(impl, width), InspectorCanvasCallTracer::processArgument(impl, height), InspectorCanvasCallTracer::processArgument(impl, format), InspectorCanvasCallTracer::processArgument(impl, type), InspectorCanvasCallTracer::processArgument(impl, pixels) });
7328 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.texSubImage2D(WTFMove(target), WTFMove(level), WTFMove(xoffset), WTFMove(yoffset), WTFMove(width), WTFMove(height), WTFMove(format), WTFMove(type), WTFMove(pixels)); })));
7329}
7330
7331#endif
7332
7333#if ENABLE(WEBGL)
7334static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_texSubImage2D2Body(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
7335{
7336 auto& vm = JSC::getVM(lexicalGlobalObject);
7337 auto throwScope = DECLARE_THROW_SCOPE(vm);
7338 UNUSED_PARAM(throwScope);
7339 UNUSED_PARAM(callFrame);
7340 auto& impl = castedThis->wrapped();
7341 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
7342 auto target = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument0.value());
7343 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7344 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
7345 auto level = convert<IDLLong>(*lexicalGlobalObject, argument1.value());
7346 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7347 EnsureStillAliveScope argument2 = callFrame->uncheckedArgument(2);
7348 auto xoffset = convert<IDLLong>(*lexicalGlobalObject, argument2.value());
7349 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7350 EnsureStillAliveScope argument3 = callFrame->uncheckedArgument(3);
7351 auto yoffset = convert<IDLLong>(*lexicalGlobalObject, argument3.value());
7352 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7353 EnsureStillAliveScope argument4 = callFrame->uncheckedArgument(4);
7354 auto format = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument4.value());
7355 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7356 EnsureStillAliveScope argument5 = callFrame->uncheckedArgument(5);
7357 auto type = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument5.value());
7358 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7359 EnsureStillAliveScope argument6 = callFrame->uncheckedArgument(6);
7360 auto source = convert<IDLUnion<IDLInterface<ImageBitmap>, IDLInterface<ImageData>, IDLInterface<HTMLImageElement>, IDLInterface<HTMLCanvasElement>, IDLInterface<HTMLVideoElement>>>(*lexicalGlobalObject, argument6.value());
7361 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7362 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
7363 InspectorCanvasCallTracer::recordAction(impl, "texSubImage2D"_s, { InspectorCanvasCallTracer::processArgument(impl, target), InspectorCanvasCallTracer::processArgument(impl, level), InspectorCanvasCallTracer::processArgument(impl, xoffset), InspectorCanvasCallTracer::processArgument(impl, yoffset), InspectorCanvasCallTracer::processArgument(impl, format), InspectorCanvasCallTracer::processArgument(impl, type), InspectorCanvasCallTracer::processArgument(impl, source) });
7364 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.texSubImage2D(WTFMove(target), WTFMove(level), WTFMove(xoffset), WTFMove(yoffset), WTFMove(format), WTFMove(type), WTFMove(source)); })));
7365}
7366
7367#endif
7368
7369#if ENABLE(WEBGL)
7370
7371static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_texSubImage2DOverloadDispatcher(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
7372{
7373 auto& vm = JSC::getVM(lexicalGlobalObject);
7374 auto throwScope = DECLARE_THROW_SCOPE(vm);
7375 UNUSED_PARAM(throwScope);
7376 UNUSED_PARAM(callFrame);
7377 size_t argsCount = std::min<size_t>(9, callFrame->argumentCount());
7378 if (argsCount == 7) {
7379#if ENABLE(WEBGL)
7380 RELEASE_AND_RETURN(throwScope, (jsWebGLRenderingContextPrototypeFunction_texSubImage2D2Body(lexicalGlobalObject, callFrame, castedThis)));
7381#endif
7382 }
7383 if (argsCount == 9) {
7384#if ENABLE(WEBGL)
7385 RELEASE_AND_RETURN(throwScope, (jsWebGLRenderingContextPrototypeFunction_texSubImage2D1Body(lexicalGlobalObject, callFrame, castedThis)));
7386#endif
7387 }
7388 return argsCount < 7 ? throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject)) : throwVMTypeError(lexicalGlobalObject, throwScope);
7389}
7390
7391JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_texSubImage2D, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
7392{
7393 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_texSubImage2DOverloadDispatcher>(*lexicalGlobalObject, *callFrame, "texSubImage2D");
7394}
7395
7396#endif
7397
7398#if ENABLE(WEBGL)
7399static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_compressedTexImage2DBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
7400{
7401 auto& vm = JSC::getVM(lexicalGlobalObject);
7402 auto throwScope = DECLARE_THROW_SCOPE(vm);
7403 UNUSED_PARAM(throwScope);
7404 UNUSED_PARAM(callFrame);
7405 auto& impl = castedThis->wrapped();
7406 if (UNLIKELY(callFrame->argumentCount() < 7))
7407 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
7408 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
7409 auto target = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument0.value());
7410 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7411 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
7412 auto level = convert<IDLLong>(*lexicalGlobalObject, argument1.value());
7413 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7414 EnsureStillAliveScope argument2 = callFrame->uncheckedArgument(2);
7415 auto internalformat = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument2.value());
7416 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7417 EnsureStillAliveScope argument3 = callFrame->uncheckedArgument(3);
7418 auto width = convert<IDLLong>(*lexicalGlobalObject, argument3.value());
7419 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7420 EnsureStillAliveScope argument4 = callFrame->uncheckedArgument(4);
7421 auto height = convert<IDLLong>(*lexicalGlobalObject, argument4.value());
7422 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7423 EnsureStillAliveScope argument5 = callFrame->uncheckedArgument(5);
7424 auto border = convert<IDLLong>(*lexicalGlobalObject, argument5.value());
7425 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7426 EnsureStillAliveScope argument6 = callFrame->uncheckedArgument(6);
7427 auto data = convert<IDLAllowSharedAdaptor<IDLArrayBufferView>>(*lexicalGlobalObject, argument6.value(), [](JSC::JSGlobalObject& lexicalGlobalObject, JSC::ThrowScope& scope) { throwArgumentTypeError(lexicalGlobalObject, scope, 6, "data", "WebGLRenderingContext", "compressedTexImage2D", "ArrayBufferView"); });
7428 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7429 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
7430 InspectorCanvasCallTracer::recordAction(impl, "compressedTexImage2D"_s, { InspectorCanvasCallTracer::processArgument(impl, target), InspectorCanvasCallTracer::processArgument(impl, level), InspectorCanvasCallTracer::processArgument(impl, internalformat), InspectorCanvasCallTracer::processArgument(impl, width), InspectorCanvasCallTracer::processArgument(impl, height), InspectorCanvasCallTracer::processArgument(impl, border), InspectorCanvasCallTracer::processArgument(impl, data) });
7431 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.compressedTexImage2D(WTFMove(target), WTFMove(level), WTFMove(internalformat), WTFMove(width), WTFMove(height), WTFMove(border), data.releaseNonNull()); })));
7432}
7433
7434JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_compressedTexImage2D, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
7435{
7436 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_compressedTexImage2DBody>(*lexicalGlobalObject, *callFrame, "compressedTexImage2D");
7437}
7438
7439#endif
7440
7441#if ENABLE(WEBGL)
7442static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_compressedTexSubImage2DBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
7443{
7444 auto& vm = JSC::getVM(lexicalGlobalObject);
7445 auto throwScope = DECLARE_THROW_SCOPE(vm);
7446 UNUSED_PARAM(throwScope);
7447 UNUSED_PARAM(callFrame);
7448 auto& impl = castedThis->wrapped();
7449 if (UNLIKELY(callFrame->argumentCount() < 8))
7450 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
7451 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
7452 auto target = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument0.value());
7453 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7454 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
7455 auto level = convert<IDLLong>(*lexicalGlobalObject, argument1.value());
7456 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7457 EnsureStillAliveScope argument2 = callFrame->uncheckedArgument(2);
7458 auto xoffset = convert<IDLLong>(*lexicalGlobalObject, argument2.value());
7459 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7460 EnsureStillAliveScope argument3 = callFrame->uncheckedArgument(3);
7461 auto yoffset = convert<IDLLong>(*lexicalGlobalObject, argument3.value());
7462 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7463 EnsureStillAliveScope argument4 = callFrame->uncheckedArgument(4);
7464 auto width = convert<IDLLong>(*lexicalGlobalObject, argument4.value());
7465 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7466 EnsureStillAliveScope argument5 = callFrame->uncheckedArgument(5);
7467 auto height = convert<IDLLong>(*lexicalGlobalObject, argument5.value());
7468 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7469 EnsureStillAliveScope argument6 = callFrame->uncheckedArgument(6);
7470 auto format = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument6.value());
7471 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7472 EnsureStillAliveScope argument7 = callFrame->uncheckedArgument(7);
7473 auto data = convert<IDLAllowSharedAdaptor<IDLArrayBufferView>>(*lexicalGlobalObject, argument7.value(), [](JSC::JSGlobalObject& lexicalGlobalObject, JSC::ThrowScope& scope) { throwArgumentTypeError(lexicalGlobalObject, scope, 7, "data", "WebGLRenderingContext", "compressedTexSubImage2D", "ArrayBufferView"); });
7474 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7475 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
7476 InspectorCanvasCallTracer::recordAction(impl, "compressedTexSubImage2D"_s, { InspectorCanvasCallTracer::processArgument(impl, target), InspectorCanvasCallTracer::processArgument(impl, level), InspectorCanvasCallTracer::processArgument(impl, xoffset), InspectorCanvasCallTracer::processArgument(impl, yoffset), InspectorCanvasCallTracer::processArgument(impl, width), InspectorCanvasCallTracer::processArgument(impl, height), InspectorCanvasCallTracer::processArgument(impl, format), InspectorCanvasCallTracer::processArgument(impl, data) });
7477 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.compressedTexSubImage2D(WTFMove(target), WTFMove(level), WTFMove(xoffset), WTFMove(yoffset), WTFMove(width), WTFMove(height), WTFMove(format), data.releaseNonNull()); })));
7478}
7479
7480JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_compressedTexSubImage2D, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
7481{
7482 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_compressedTexSubImage2DBody>(*lexicalGlobalObject, *callFrame, "compressedTexSubImage2D");
7483}
7484
7485#endif
7486
7487#if ENABLE(WEBGL)
7488static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_copyTexImage2DBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
7489{
7490 auto& vm = JSC::getVM(lexicalGlobalObject);
7491 auto throwScope = DECLARE_THROW_SCOPE(vm);
7492 UNUSED_PARAM(throwScope);
7493 UNUSED_PARAM(callFrame);
7494 auto& impl = castedThis->wrapped();
7495 if (UNLIKELY(callFrame->argumentCount() < 8))
7496 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
7497 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
7498 auto target = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument0.value());
7499 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7500 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
7501 auto level = convert<IDLLong>(*lexicalGlobalObject, argument1.value());
7502 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7503 EnsureStillAliveScope argument2 = callFrame->uncheckedArgument(2);
7504 auto internalformat = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument2.value());
7505 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7506 EnsureStillAliveScope argument3 = callFrame->uncheckedArgument(3);
7507 auto x = convert<IDLLong>(*lexicalGlobalObject, argument3.value());
7508 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7509 EnsureStillAliveScope argument4 = callFrame->uncheckedArgument(4);
7510 auto y = convert<IDLLong>(*lexicalGlobalObject, argument4.value());
7511 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7512 EnsureStillAliveScope argument5 = callFrame->uncheckedArgument(5);
7513 auto width = convert<IDLLong>(*lexicalGlobalObject, argument5.value());
7514 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7515 EnsureStillAliveScope argument6 = callFrame->uncheckedArgument(6);
7516 auto height = convert<IDLLong>(*lexicalGlobalObject, argument6.value());
7517 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7518 EnsureStillAliveScope argument7 = callFrame->uncheckedArgument(7);
7519 auto border = convert<IDLLong>(*lexicalGlobalObject, argument7.value());
7520 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7521 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
7522 InspectorCanvasCallTracer::recordAction(impl, "copyTexImage2D"_s, { InspectorCanvasCallTracer::processArgument(impl, target), InspectorCanvasCallTracer::processArgument(impl, level), InspectorCanvasCallTracer::processArgument(impl, internalformat), InspectorCanvasCallTracer::processArgument(impl, x), InspectorCanvasCallTracer::processArgument(impl, y), InspectorCanvasCallTracer::processArgument(impl, width), InspectorCanvasCallTracer::processArgument(impl, height), InspectorCanvasCallTracer::processArgument(impl, border) });
7523 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.copyTexImage2D(WTFMove(target), WTFMove(level), WTFMove(internalformat), WTFMove(x), WTFMove(y), WTFMove(width), WTFMove(height), WTFMove(border)); })));
7524}
7525
7526JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_copyTexImage2D, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
7527{
7528 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_copyTexImage2DBody>(*lexicalGlobalObject, *callFrame, "copyTexImage2D");
7529}
7530
7531#endif
7532
7533#if ENABLE(WEBGL)
7534static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_copyTexSubImage2DBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
7535{
7536 auto& vm = JSC::getVM(lexicalGlobalObject);
7537 auto throwScope = DECLARE_THROW_SCOPE(vm);
7538 UNUSED_PARAM(throwScope);
7539 UNUSED_PARAM(callFrame);
7540 auto& impl = castedThis->wrapped();
7541 if (UNLIKELY(callFrame->argumentCount() < 8))
7542 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
7543 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
7544 auto target = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument0.value());
7545 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7546 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
7547 auto level = convert<IDLLong>(*lexicalGlobalObject, argument1.value());
7548 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7549 EnsureStillAliveScope argument2 = callFrame->uncheckedArgument(2);
7550 auto xoffset = convert<IDLLong>(*lexicalGlobalObject, argument2.value());
7551 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7552 EnsureStillAliveScope argument3 = callFrame->uncheckedArgument(3);
7553 auto yoffset = convert<IDLLong>(*lexicalGlobalObject, argument3.value());
7554 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7555 EnsureStillAliveScope argument4 = callFrame->uncheckedArgument(4);
7556 auto x = convert<IDLLong>(*lexicalGlobalObject, argument4.value());
7557 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7558 EnsureStillAliveScope argument5 = callFrame->uncheckedArgument(5);
7559 auto y = convert<IDLLong>(*lexicalGlobalObject, argument5.value());
7560 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7561 EnsureStillAliveScope argument6 = callFrame->uncheckedArgument(6);
7562 auto width = convert<IDLLong>(*lexicalGlobalObject, argument6.value());
7563 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7564 EnsureStillAliveScope argument7 = callFrame->uncheckedArgument(7);
7565 auto height = convert<IDLLong>(*lexicalGlobalObject, argument7.value());
7566 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7567 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
7568 InspectorCanvasCallTracer::recordAction(impl, "copyTexSubImage2D"_s, { InspectorCanvasCallTracer::processArgument(impl, target), InspectorCanvasCallTracer::processArgument(impl, level), InspectorCanvasCallTracer::processArgument(impl, xoffset), InspectorCanvasCallTracer::processArgument(impl, yoffset), InspectorCanvasCallTracer::processArgument(impl, x), InspectorCanvasCallTracer::processArgument(impl, y), InspectorCanvasCallTracer::processArgument(impl, width), InspectorCanvasCallTracer::processArgument(impl, height) });
7569 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.copyTexSubImage2D(WTFMove(target), WTFMove(level), WTFMove(xoffset), WTFMove(yoffset), WTFMove(x), WTFMove(y), WTFMove(width), WTFMove(height)); })));
7570}
7571
7572JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_copyTexSubImage2D, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
7573{
7574 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_copyTexSubImage2DBody>(*lexicalGlobalObject, *callFrame, "copyTexSubImage2D");
7575}
7576
7577#endif
7578
7579#if ENABLE(WEBGL)
7580static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_createBufferBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
7581{
7582 auto& vm = JSC::getVM(lexicalGlobalObject);
7583 auto throwScope = DECLARE_THROW_SCOPE(vm);
7584 UNUSED_PARAM(throwScope);
7585 UNUSED_PARAM(callFrame);
7586 auto& impl = castedThis->wrapped();
7587 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
7588 InspectorCanvasCallTracer::recordAction(impl, "createBuffer"_s);
7589 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLInterface<WebGLBuffer>>(*lexicalGlobalObject, *castedThis->globalObject(), throwScope, impl.createBuffer())));
7590}
7591
7592JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_createBuffer, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
7593{
7594 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_createBufferBody>(*lexicalGlobalObject, *callFrame, "createBuffer");
7595}
7596
7597#endif
7598
7599#if ENABLE(WEBGL)
7600static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_createFramebufferBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
7601{
7602 auto& vm = JSC::getVM(lexicalGlobalObject);
7603 auto throwScope = DECLARE_THROW_SCOPE(vm);
7604 UNUSED_PARAM(throwScope);
7605 UNUSED_PARAM(callFrame);
7606 auto& impl = castedThis->wrapped();
7607 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
7608 InspectorCanvasCallTracer::recordAction(impl, "createFramebuffer"_s);
7609 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLInterface<WebGLFramebuffer>>(*lexicalGlobalObject, *castedThis->globalObject(), throwScope, impl.createFramebuffer())));
7610}
7611
7612JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_createFramebuffer, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
7613{
7614 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_createFramebufferBody>(*lexicalGlobalObject, *callFrame, "createFramebuffer");
7615}
7616
7617#endif
7618
7619#if ENABLE(WEBGL)
7620static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_createProgramBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
7621{
7622 auto& vm = JSC::getVM(lexicalGlobalObject);
7623 auto throwScope = DECLARE_THROW_SCOPE(vm);
7624 UNUSED_PARAM(throwScope);
7625 UNUSED_PARAM(callFrame);
7626 auto& impl = castedThis->wrapped();
7627 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
7628 InspectorCanvasCallTracer::recordAction(impl, "createProgram"_s);
7629 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLInterface<WebGLProgram>>(*lexicalGlobalObject, *castedThis->globalObject(), throwScope, impl.createProgram())));
7630}
7631
7632JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_createProgram, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
7633{
7634 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_createProgramBody>(*lexicalGlobalObject, *callFrame, "createProgram");
7635}
7636
7637#endif
7638
7639#if ENABLE(WEBGL)
7640static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_createRenderbufferBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
7641{
7642 auto& vm = JSC::getVM(lexicalGlobalObject);
7643 auto throwScope = DECLARE_THROW_SCOPE(vm);
7644 UNUSED_PARAM(throwScope);
7645 UNUSED_PARAM(callFrame);
7646 auto& impl = castedThis->wrapped();
7647 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
7648 InspectorCanvasCallTracer::recordAction(impl, "createRenderbuffer"_s);
7649 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLInterface<WebGLRenderbuffer>>(*lexicalGlobalObject, *castedThis->globalObject(), throwScope, impl.createRenderbuffer())));
7650}
7651
7652JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_createRenderbuffer, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
7653{
7654 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_createRenderbufferBody>(*lexicalGlobalObject, *callFrame, "createRenderbuffer");
7655}
7656
7657#endif
7658
7659#if ENABLE(WEBGL)
7660static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_createShaderBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
7661{
7662 auto& vm = JSC::getVM(lexicalGlobalObject);
7663 auto throwScope = DECLARE_THROW_SCOPE(vm);
7664 UNUSED_PARAM(throwScope);
7665 UNUSED_PARAM(callFrame);
7666 auto& impl = castedThis->wrapped();
7667 if (UNLIKELY(callFrame->argumentCount() < 1))
7668 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
7669 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
7670 auto type = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument0.value());
7671 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7672 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
7673 InspectorCanvasCallTracer::recordAction(impl, "createShader"_s, { InspectorCanvasCallTracer::processArgument(impl, type) });
7674 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLInterface<WebGLShader>>(*lexicalGlobalObject, *castedThis->globalObject(), throwScope, impl.createShader(WTFMove(type)))));
7675}
7676
7677JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_createShader, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
7678{
7679 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_createShaderBody>(*lexicalGlobalObject, *callFrame, "createShader");
7680}
7681
7682#endif
7683
7684#if ENABLE(WEBGL)
7685static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_createTextureBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
7686{
7687 auto& vm = JSC::getVM(lexicalGlobalObject);
7688 auto throwScope = DECLARE_THROW_SCOPE(vm);
7689 UNUSED_PARAM(throwScope);
7690 UNUSED_PARAM(callFrame);
7691 auto& impl = castedThis->wrapped();
7692 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
7693 InspectorCanvasCallTracer::recordAction(impl, "createTexture"_s);
7694 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLInterface<WebGLTexture>>(*lexicalGlobalObject, *castedThis->globalObject(), throwScope, impl.createTexture())));
7695}
7696
7697JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_createTexture, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
7698{
7699 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_createTextureBody>(*lexicalGlobalObject, *callFrame, "createTexture");
7700}
7701
7702#endif
7703
7704#if ENABLE(WEBGL)
7705static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_cullFaceBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
7706{
7707 auto& vm = JSC::getVM(lexicalGlobalObject);
7708 auto throwScope = DECLARE_THROW_SCOPE(vm);
7709 UNUSED_PARAM(throwScope);
7710 UNUSED_PARAM(callFrame);
7711 auto& impl = castedThis->wrapped();
7712 if (UNLIKELY(callFrame->argumentCount() < 1))
7713 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
7714 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
7715 auto mode = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument0.value());
7716 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7717 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
7718 InspectorCanvasCallTracer::recordAction(impl, "cullFace"_s, { InspectorCanvasCallTracer::processArgument(impl, mode) });
7719 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.cullFace(WTFMove(mode)); })));
7720}
7721
7722JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_cullFace, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
7723{
7724 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_cullFaceBody>(*lexicalGlobalObject, *callFrame, "cullFace");
7725}
7726
7727#endif
7728
7729#if ENABLE(WEBGL)
7730static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_deleteBufferBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
7731{
7732 auto& vm = JSC::getVM(lexicalGlobalObject);
7733 auto throwScope = DECLARE_THROW_SCOPE(vm);
7734 UNUSED_PARAM(throwScope);
7735 UNUSED_PARAM(callFrame);
7736 auto& impl = castedThis->wrapped();
7737 if (UNLIKELY(callFrame->argumentCount() < 1))
7738 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
7739 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
7740 auto buffer = convert<IDLNullable<IDLInterface<WebGLBuffer>>>(*lexicalGlobalObject, argument0.value(), [](JSC::JSGlobalObject& lexicalGlobalObject, JSC::ThrowScope& scope) { throwArgumentTypeError(lexicalGlobalObject, scope, 0, "buffer", "WebGLRenderingContext", "deleteBuffer", "WebGLBuffer"); });
7741 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7742 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
7743 InspectorCanvasCallTracer::recordAction(impl, "deleteBuffer"_s, { InspectorCanvasCallTracer::processArgument(impl, buffer) });
7744 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.deleteBuffer(WTFMove(buffer)); })));
7745}
7746
7747JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_deleteBuffer, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
7748{
7749 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_deleteBufferBody>(*lexicalGlobalObject, *callFrame, "deleteBuffer");
7750}
7751
7752#endif
7753
7754#if ENABLE(WEBGL)
7755static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_deleteFramebufferBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
7756{
7757 auto& vm = JSC::getVM(lexicalGlobalObject);
7758 auto throwScope = DECLARE_THROW_SCOPE(vm);
7759 UNUSED_PARAM(throwScope);
7760 UNUSED_PARAM(callFrame);
7761 auto& impl = castedThis->wrapped();
7762 if (UNLIKELY(callFrame->argumentCount() < 1))
7763 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
7764 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
7765 auto framebuffer = convert<IDLNullable<IDLInterface<WebGLFramebuffer>>>(*lexicalGlobalObject, argument0.value(), [](JSC::JSGlobalObject& lexicalGlobalObject, JSC::ThrowScope& scope) { throwArgumentTypeError(lexicalGlobalObject, scope, 0, "framebuffer", "WebGLRenderingContext", "deleteFramebuffer", "WebGLFramebuffer"); });
7766 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7767 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
7768 InspectorCanvasCallTracer::recordAction(impl, "deleteFramebuffer"_s, { InspectorCanvasCallTracer::processArgument(impl, framebuffer) });
7769 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.deleteFramebuffer(WTFMove(framebuffer)); })));
7770}
7771
7772JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_deleteFramebuffer, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
7773{
7774 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_deleteFramebufferBody>(*lexicalGlobalObject, *callFrame, "deleteFramebuffer");
7775}
7776
7777#endif
7778
7779#if ENABLE(WEBGL)
7780static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_deleteProgramBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
7781{
7782 auto& vm = JSC::getVM(lexicalGlobalObject);
7783 auto throwScope = DECLARE_THROW_SCOPE(vm);
7784 UNUSED_PARAM(throwScope);
7785 UNUSED_PARAM(callFrame);
7786 auto& impl = castedThis->wrapped();
7787 if (UNLIKELY(callFrame->argumentCount() < 1))
7788 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
7789 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
7790 auto program = convert<IDLNullable<IDLInterface<WebGLProgram>>>(*lexicalGlobalObject, argument0.value(), [](JSC::JSGlobalObject& lexicalGlobalObject, JSC::ThrowScope& scope) { throwArgumentTypeError(lexicalGlobalObject, scope, 0, "program", "WebGLRenderingContext", "deleteProgram", "WebGLProgram"); });
7791 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7792 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
7793 InspectorCanvasCallTracer::recordAction(impl, "deleteProgram"_s, { InspectorCanvasCallTracer::processArgument(impl, program) });
7794 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.deleteProgram(WTFMove(program)); })));
7795}
7796
7797JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_deleteProgram, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
7798{
7799 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_deleteProgramBody>(*lexicalGlobalObject, *callFrame, "deleteProgram");
7800}
7801
7802#endif
7803
7804#if ENABLE(WEBGL)
7805static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_deleteRenderbufferBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
7806{
7807 auto& vm = JSC::getVM(lexicalGlobalObject);
7808 auto throwScope = DECLARE_THROW_SCOPE(vm);
7809 UNUSED_PARAM(throwScope);
7810 UNUSED_PARAM(callFrame);
7811 auto& impl = castedThis->wrapped();
7812 if (UNLIKELY(callFrame->argumentCount() < 1))
7813 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
7814 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
7815 auto renderbuffer = convert<IDLNullable<IDLInterface<WebGLRenderbuffer>>>(*lexicalGlobalObject, argument0.value(), [](JSC::JSGlobalObject& lexicalGlobalObject, JSC::ThrowScope& scope) { throwArgumentTypeError(lexicalGlobalObject, scope, 0, "renderbuffer", "WebGLRenderingContext", "deleteRenderbuffer", "WebGLRenderbuffer"); });
7816 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7817 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
7818 InspectorCanvasCallTracer::recordAction(impl, "deleteRenderbuffer"_s, { InspectorCanvasCallTracer::processArgument(impl, renderbuffer) });
7819 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.deleteRenderbuffer(WTFMove(renderbuffer)); })));
7820}
7821
7822JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_deleteRenderbuffer, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
7823{
7824 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_deleteRenderbufferBody>(*lexicalGlobalObject, *callFrame, "deleteRenderbuffer");
7825}
7826
7827#endif
7828
7829#if ENABLE(WEBGL)
7830static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_deleteShaderBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
7831{
7832 auto& vm = JSC::getVM(lexicalGlobalObject);
7833 auto throwScope = DECLARE_THROW_SCOPE(vm);
7834 UNUSED_PARAM(throwScope);
7835 UNUSED_PARAM(callFrame);
7836 auto& impl = castedThis->wrapped();
7837 if (UNLIKELY(callFrame->argumentCount() < 1))
7838 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
7839 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
7840 auto shader = convert<IDLNullable<IDLInterface<WebGLShader>>>(*lexicalGlobalObject, argument0.value(), [](JSC::JSGlobalObject& lexicalGlobalObject, JSC::ThrowScope& scope) { throwArgumentTypeError(lexicalGlobalObject, scope, 0, "shader", "WebGLRenderingContext", "deleteShader", "WebGLShader"); });
7841 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7842 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
7843 InspectorCanvasCallTracer::recordAction(impl, "deleteShader"_s, { InspectorCanvasCallTracer::processArgument(impl, shader) });
7844 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.deleteShader(WTFMove(shader)); })));
7845}
7846
7847JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_deleteShader, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
7848{
7849 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_deleteShaderBody>(*lexicalGlobalObject, *callFrame, "deleteShader");
7850}
7851
7852#endif
7853
7854#if ENABLE(WEBGL)
7855static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_deleteTextureBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
7856{
7857 auto& vm = JSC::getVM(lexicalGlobalObject);
7858 auto throwScope = DECLARE_THROW_SCOPE(vm);
7859 UNUSED_PARAM(throwScope);
7860 UNUSED_PARAM(callFrame);
7861 auto& impl = castedThis->wrapped();
7862 if (UNLIKELY(callFrame->argumentCount() < 1))
7863 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
7864 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
7865 auto texture = convert<IDLNullable<IDLInterface<WebGLTexture>>>(*lexicalGlobalObject, argument0.value(), [](JSC::JSGlobalObject& lexicalGlobalObject, JSC::ThrowScope& scope) { throwArgumentTypeError(lexicalGlobalObject, scope, 0, "texture", "WebGLRenderingContext", "deleteTexture", "WebGLTexture"); });
7866 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7867 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
7868 InspectorCanvasCallTracer::recordAction(impl, "deleteTexture"_s, { InspectorCanvasCallTracer::processArgument(impl, texture) });
7869 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.deleteTexture(WTFMove(texture)); })));
7870}
7871
7872JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_deleteTexture, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
7873{
7874 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_deleteTextureBody>(*lexicalGlobalObject, *callFrame, "deleteTexture");
7875}
7876
7877#endif
7878
7879#if ENABLE(WEBGL)
7880static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_depthFuncBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
7881{
7882 auto& vm = JSC::getVM(lexicalGlobalObject);
7883 auto throwScope = DECLARE_THROW_SCOPE(vm);
7884 UNUSED_PARAM(throwScope);
7885 UNUSED_PARAM(callFrame);
7886 auto& impl = castedThis->wrapped();
7887 if (UNLIKELY(callFrame->argumentCount() < 1))
7888 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
7889 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
7890 auto func = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument0.value());
7891 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7892 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
7893 InspectorCanvasCallTracer::recordAction(impl, "depthFunc"_s, { InspectorCanvasCallTracer::processArgument(impl, func) });
7894 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.depthFunc(WTFMove(func)); })));
7895}
7896
7897JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_depthFunc, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
7898{
7899 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_depthFuncBody>(*lexicalGlobalObject, *callFrame, "depthFunc");
7900}
7901
7902#endif
7903
7904#if ENABLE(WEBGL)
7905static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_depthMaskBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
7906{
7907 auto& vm = JSC::getVM(lexicalGlobalObject);
7908 auto throwScope = DECLARE_THROW_SCOPE(vm);
7909 UNUSED_PARAM(throwScope);
7910 UNUSED_PARAM(callFrame);
7911 auto& impl = castedThis->wrapped();
7912 if (UNLIKELY(callFrame->argumentCount() < 1))
7913 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
7914 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
7915 auto flag = convert<IDLBoolean>(*lexicalGlobalObject, argument0.value());
7916 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7917 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
7918 InspectorCanvasCallTracer::recordAction(impl, "depthMask"_s, { InspectorCanvasCallTracer::processArgument(impl, flag) });
7919 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.depthMask(WTFMove(flag)); })));
7920}
7921
7922JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_depthMask, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
7923{
7924 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_depthMaskBody>(*lexicalGlobalObject, *callFrame, "depthMask");
7925}
7926
7927#endif
7928
7929#if ENABLE(WEBGL)
7930static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_depthRangeBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
7931{
7932 auto& vm = JSC::getVM(lexicalGlobalObject);
7933 auto throwScope = DECLARE_THROW_SCOPE(vm);
7934 UNUSED_PARAM(throwScope);
7935 UNUSED_PARAM(callFrame);
7936 auto& impl = castedThis->wrapped();
7937 if (UNLIKELY(callFrame->argumentCount() < 2))
7938 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
7939 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
7940 auto zNear = convert<IDLUnrestrictedFloat>(*lexicalGlobalObject, argument0.value());
7941 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7942 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
7943 auto zFar = convert<IDLUnrestrictedFloat>(*lexicalGlobalObject, argument1.value());
7944 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7945 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
7946 InspectorCanvasCallTracer::recordAction(impl, "depthRange"_s, { InspectorCanvasCallTracer::processArgument(impl, zNear), InspectorCanvasCallTracer::processArgument(impl, zFar) });
7947 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.depthRange(WTFMove(zNear), WTFMove(zFar)); })));
7948}
7949
7950JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_depthRange, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
7951{
7952 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_depthRangeBody>(*lexicalGlobalObject, *callFrame, "depthRange");
7953}
7954
7955#endif
7956
7957#if ENABLE(WEBGL)
7958static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_detachShaderBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
7959{
7960 auto& vm = JSC::getVM(lexicalGlobalObject);
7961 auto throwScope = DECLARE_THROW_SCOPE(vm);
7962 UNUSED_PARAM(throwScope);
7963 UNUSED_PARAM(callFrame);
7964 auto& impl = castedThis->wrapped();
7965 if (UNLIKELY(callFrame->argumentCount() < 2))
7966 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
7967 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
7968 auto program = convert<IDLInterface<WebGLProgram>>(*lexicalGlobalObject, argument0.value(), [](JSC::JSGlobalObject& lexicalGlobalObject, JSC::ThrowScope& scope) { throwArgumentTypeError(lexicalGlobalObject, scope, 0, "program", "WebGLRenderingContext", "detachShader", "WebGLProgram"); });
7969 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7970 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
7971 auto shader = convert<IDLInterface<WebGLShader>>(*lexicalGlobalObject, argument1.value(), [](JSC::JSGlobalObject& lexicalGlobalObject, JSC::ThrowScope& scope) { throwArgumentTypeError(lexicalGlobalObject, scope, 1, "shader", "WebGLRenderingContext", "detachShader", "WebGLShader"); });
7972 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7973 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
7974 InspectorCanvasCallTracer::recordAction(impl, "detachShader"_s, { InspectorCanvasCallTracer::processArgument(impl, program), InspectorCanvasCallTracer::processArgument(impl, shader) });
7975 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.detachShader(*program, *shader); })));
7976}
7977
7978JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_detachShader, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
7979{
7980 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_detachShaderBody>(*lexicalGlobalObject, *callFrame, "detachShader");
7981}
7982
7983#endif
7984
7985#if ENABLE(WEBGL)
7986static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_disableBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
7987{
7988 auto& vm = JSC::getVM(lexicalGlobalObject);
7989 auto throwScope = DECLARE_THROW_SCOPE(vm);
7990 UNUSED_PARAM(throwScope);
7991 UNUSED_PARAM(callFrame);
7992 auto& impl = castedThis->wrapped();
7993 if (UNLIKELY(callFrame->argumentCount() < 1))
7994 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
7995 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
7996 auto cap = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument0.value());
7997 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
7998 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
7999 InspectorCanvasCallTracer::recordAction(impl, "disable"_s, { InspectorCanvasCallTracer::processArgument(impl, cap) });
8000 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.disable(WTFMove(cap)); })));
8001}
8002
8003JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_disable, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
8004{
8005 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_disableBody>(*lexicalGlobalObject, *callFrame, "disable");
8006}
8007
8008#endif
8009
8010#if ENABLE(WEBGL)
8011static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_disableVertexAttribArrayBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
8012{
8013 auto& vm = JSC::getVM(lexicalGlobalObject);
8014 auto throwScope = DECLARE_THROW_SCOPE(vm);
8015 UNUSED_PARAM(throwScope);
8016 UNUSED_PARAM(callFrame);
8017 auto& impl = castedThis->wrapped();
8018 if (UNLIKELY(callFrame->argumentCount() < 1))
8019 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
8020 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
8021 auto index = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument0.value());
8022 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
8023 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
8024 InspectorCanvasCallTracer::recordAction(impl, "disableVertexAttribArray"_s, { InspectorCanvasCallTracer::processArgument(impl, index) });
8025 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.disableVertexAttribArray(WTFMove(index)); })));
8026}
8027
8028JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_disableVertexAttribArray, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
8029{
8030 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_disableVertexAttribArrayBody>(*lexicalGlobalObject, *callFrame, "disableVertexAttribArray");
8031}
8032
8033#endif
8034
8035#if ENABLE(WEBGL)
8036static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_drawArraysBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
8037{
8038 auto& vm = JSC::getVM(lexicalGlobalObject);
8039 auto throwScope = DECLARE_THROW_SCOPE(vm);
8040 UNUSED_PARAM(throwScope);
8041 UNUSED_PARAM(callFrame);
8042 auto& impl = castedThis->wrapped();
8043 if (UNLIKELY(callFrame->argumentCount() < 3))
8044 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
8045 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
8046 auto mode = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument0.value());
8047 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
8048 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
8049 auto first = convert<IDLLong>(*lexicalGlobalObject, argument1.value());
8050 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
8051 EnsureStillAliveScope argument2 = callFrame->uncheckedArgument(2);
8052 auto count = convert<IDLLong>(*lexicalGlobalObject, argument2.value());
8053 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
8054 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
8055 InspectorCanvasCallTracer::recordAction(impl, "drawArrays"_s, { InspectorCanvasCallTracer::processArgument(impl, mode), InspectorCanvasCallTracer::processArgument(impl, first), InspectorCanvasCallTracer::processArgument(impl, count) });
8056 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.drawArrays(WTFMove(mode), WTFMove(first), WTFMove(count)); })));
8057}
8058
8059JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_drawArrays, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
8060{
8061 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_drawArraysBody>(*lexicalGlobalObject, *callFrame, "drawArrays");
8062}
8063
8064#endif
8065
8066#if ENABLE(WEBGL)
8067static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_drawElementsBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
8068{
8069 auto& vm = JSC::getVM(lexicalGlobalObject);
8070 auto throwScope = DECLARE_THROW_SCOPE(vm);
8071 UNUSED_PARAM(throwScope);
8072 UNUSED_PARAM(callFrame);
8073 auto& impl = castedThis->wrapped();
8074 if (UNLIKELY(callFrame->argumentCount() < 4))
8075 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
8076 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
8077 auto mode = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument0.value());
8078 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
8079 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
8080 auto count = convert<IDLLong>(*lexicalGlobalObject, argument1.value());
8081 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
8082 EnsureStillAliveScope argument2 = callFrame->uncheckedArgument(2);
8083 auto type = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument2.value());
8084 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
8085 EnsureStillAliveScope argument3 = callFrame->uncheckedArgument(3);
8086 auto offset = convert<IDLLongLong>(*lexicalGlobalObject, argument3.value());
8087 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
8088 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
8089 InspectorCanvasCallTracer::recordAction(impl, "drawElements"_s, { InspectorCanvasCallTracer::processArgument(impl, mode), InspectorCanvasCallTracer::processArgument(impl, count), InspectorCanvasCallTracer::processArgument(impl, type), InspectorCanvasCallTracer::processArgument(impl, offset) });
8090 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.drawElements(WTFMove(mode), WTFMove(count), WTFMove(type), WTFMove(offset)); })));
8091}
8092
8093JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_drawElements, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
8094{
8095 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_drawElementsBody>(*lexicalGlobalObject, *callFrame, "drawElements");
8096}
8097
8098#endif
8099
8100#if ENABLE(WEBGL)
8101static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_enableBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
8102{
8103 auto& vm = JSC::getVM(lexicalGlobalObject);
8104 auto throwScope = DECLARE_THROW_SCOPE(vm);
8105 UNUSED_PARAM(throwScope);
8106 UNUSED_PARAM(callFrame);
8107 auto& impl = castedThis->wrapped();
8108 if (UNLIKELY(callFrame->argumentCount() < 1))
8109 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
8110 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
8111 auto cap = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument0.value());
8112 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
8113 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
8114 InspectorCanvasCallTracer::recordAction(impl, "enable"_s, { InspectorCanvasCallTracer::processArgument(impl, cap) });
8115 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.enable(WTFMove(cap)); })));
8116}
8117
8118JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_enable, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
8119{
8120 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_enableBody>(*lexicalGlobalObject, *callFrame, "enable");
8121}
8122
8123#endif
8124
8125#if ENABLE(WEBGL)
8126static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_enableVertexAttribArrayBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
8127{
8128 auto& vm = JSC::getVM(lexicalGlobalObject);
8129 auto throwScope = DECLARE_THROW_SCOPE(vm);
8130 UNUSED_PARAM(throwScope);
8131 UNUSED_PARAM(callFrame);
8132 auto& impl = castedThis->wrapped();
8133 if (UNLIKELY(callFrame->argumentCount() < 1))
8134 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
8135 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
8136 auto index = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument0.value());
8137 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
8138 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
8139 InspectorCanvasCallTracer::recordAction(impl, "enableVertexAttribArray"_s, { InspectorCanvasCallTracer::processArgument(impl, index) });
8140 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.enableVertexAttribArray(WTFMove(index)); })));
8141}
8142
8143JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_enableVertexAttribArray, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
8144{
8145 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_enableVertexAttribArrayBody>(*lexicalGlobalObject, *callFrame, "enableVertexAttribArray");
8146}
8147
8148#endif
8149
8150#if ENABLE(WEBGL)
8151static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_finishBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
8152{
8153 auto& vm = JSC::getVM(lexicalGlobalObject);
8154 auto throwScope = DECLARE_THROW_SCOPE(vm);
8155 UNUSED_PARAM(throwScope);
8156 UNUSED_PARAM(callFrame);
8157 auto& impl = castedThis->wrapped();
8158 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
8159 InspectorCanvasCallTracer::recordAction(impl, "finish"_s);
8160 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.finish(); })));
8161}
8162
8163JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_finish, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
8164{
8165 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_finishBody>(*lexicalGlobalObject, *callFrame, "finish");
8166}
8167
8168#endif
8169
8170#if ENABLE(WEBGL)
8171static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_flushBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
8172{
8173 auto& vm = JSC::getVM(lexicalGlobalObject);
8174 auto throwScope = DECLARE_THROW_SCOPE(vm);
8175 UNUSED_PARAM(throwScope);
8176 UNUSED_PARAM(callFrame);
8177 auto& impl = castedThis->wrapped();
8178 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
8179 InspectorCanvasCallTracer::recordAction(impl, "flush"_s);
8180 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.flush(); })));
8181}
8182
8183JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_flush, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
8184{
8185 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_flushBody>(*lexicalGlobalObject, *callFrame, "flush");
8186}
8187
8188#endif
8189
8190#if ENABLE(WEBGL)
8191static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_framebufferRenderbufferBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
8192{
8193 auto& vm = JSC::getVM(lexicalGlobalObject);
8194 auto throwScope = DECLARE_THROW_SCOPE(vm);
8195 UNUSED_PARAM(throwScope);
8196 UNUSED_PARAM(callFrame);
8197 auto& impl = castedThis->wrapped();
8198 if (UNLIKELY(callFrame->argumentCount() < 4))
8199 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
8200 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
8201 auto target = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument0.value());
8202 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
8203 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
8204 auto attachment = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument1.value());
8205 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
8206 EnsureStillAliveScope argument2 = callFrame->uncheckedArgument(2);
8207 auto renderbuffertarget = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument2.value());
8208 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
8209 EnsureStillAliveScope argument3 = callFrame->uncheckedArgument(3);
8210 auto renderbuffer = convert<IDLNullable<IDLInterface<WebGLRenderbuffer>>>(*lexicalGlobalObject, argument3.value(), [](JSC::JSGlobalObject& lexicalGlobalObject, JSC::ThrowScope& scope) { throwArgumentTypeError(lexicalGlobalObject, scope, 3, "renderbuffer", "WebGLRenderingContext", "framebufferRenderbuffer", "WebGLRenderbuffer"); });
8211 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
8212 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
8213 InspectorCanvasCallTracer::recordAction(impl, "framebufferRenderbuffer"_s, { InspectorCanvasCallTracer::processArgument(impl, target), InspectorCanvasCallTracer::processArgument(impl, attachment), InspectorCanvasCallTracer::processArgument(impl, renderbuffertarget), InspectorCanvasCallTracer::processArgument(impl, renderbuffer) });
8214 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.framebufferRenderbuffer(WTFMove(target), WTFMove(attachment), WTFMove(renderbuffertarget), WTFMove(renderbuffer)); })));
8215}
8216
8217JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_framebufferRenderbuffer, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
8218{
8219 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_framebufferRenderbufferBody>(*lexicalGlobalObject, *callFrame, "framebufferRenderbuffer");
8220}
8221
8222#endif
8223
8224#if ENABLE(WEBGL)
8225static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_framebufferTexture2DBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
8226{
8227 auto& vm = JSC::getVM(lexicalGlobalObject);
8228 auto throwScope = DECLARE_THROW_SCOPE(vm);
8229 UNUSED_PARAM(throwScope);
8230 UNUSED_PARAM(callFrame);
8231 auto& impl = castedThis->wrapped();
8232 if (UNLIKELY(callFrame->argumentCount() < 5))
8233 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
8234 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
8235 auto target = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument0.value());
8236 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
8237 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
8238 auto attachment = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument1.value());
8239 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
8240 EnsureStillAliveScope argument2 = callFrame->uncheckedArgument(2);
8241 auto textarget = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument2.value());
8242 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
8243 EnsureStillAliveScope argument3 = callFrame->uncheckedArgument(3);
8244 auto texture = convert<IDLNullable<IDLInterface<WebGLTexture>>>(*lexicalGlobalObject, argument3.value(), [](JSC::JSGlobalObject& lexicalGlobalObject, JSC::ThrowScope& scope) { throwArgumentTypeError(lexicalGlobalObject, scope, 3, "texture", "WebGLRenderingContext", "framebufferTexture2D", "WebGLTexture"); });
8245 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
8246 EnsureStillAliveScope argument4 = callFrame->uncheckedArgument(4);
8247 auto level = convert<IDLLong>(*lexicalGlobalObject, argument4.value());
8248 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
8249 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
8250 InspectorCanvasCallTracer::recordAction(impl, "framebufferTexture2D"_s, { InspectorCanvasCallTracer::processArgument(impl, target), InspectorCanvasCallTracer::processArgument(impl, attachment), InspectorCanvasCallTracer::processArgument(impl, textarget), InspectorCanvasCallTracer::processArgument(impl, texture), InspectorCanvasCallTracer::processArgument(impl, level) });
8251 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.framebufferTexture2D(WTFMove(target), WTFMove(attachment), WTFMove(textarget), WTFMove(texture), WTFMove(level)); })));
8252}
8253
8254JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_framebufferTexture2D, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
8255{
8256 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_framebufferTexture2DBody>(*lexicalGlobalObject, *callFrame, "framebufferTexture2D");
8257}
8258
8259#endif
8260
8261#if ENABLE(WEBGL)
8262static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_frontFaceBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
8263{
8264 auto& vm = JSC::getVM(lexicalGlobalObject);
8265 auto throwScope = DECLARE_THROW_SCOPE(vm);
8266 UNUSED_PARAM(throwScope);
8267 UNUSED_PARAM(callFrame);
8268 auto& impl = castedThis->wrapped();
8269 if (UNLIKELY(callFrame->argumentCount() < 1))
8270 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
8271 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
8272 auto mode = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument0.value());
8273 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
8274 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
8275 InspectorCanvasCallTracer::recordAction(impl, "frontFace"_s, { InspectorCanvasCallTracer::processArgument(impl, mode) });
8276 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.frontFace(WTFMove(mode)); })));
8277}
8278
8279JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_frontFace, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
8280{
8281 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_frontFaceBody>(*lexicalGlobalObject, *callFrame, "frontFace");
8282}
8283
8284#endif
8285
8286#if ENABLE(WEBGL)
8287static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_generateMipmapBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
8288{
8289 auto& vm = JSC::getVM(lexicalGlobalObject);
8290 auto throwScope = DECLARE_THROW_SCOPE(vm);
8291 UNUSED_PARAM(throwScope);
8292 UNUSED_PARAM(callFrame);
8293 auto& impl = castedThis->wrapped();
8294 if (UNLIKELY(callFrame->argumentCount() < 1))
8295 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
8296 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
8297 auto target = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument0.value());
8298 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
8299 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
8300 InspectorCanvasCallTracer::recordAction(impl, "generateMipmap"_s, { InspectorCanvasCallTracer::processArgument(impl, target) });
8301 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.generateMipmap(WTFMove(target)); })));
8302}
8303
8304JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_generateMipmap, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
8305{
8306 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_generateMipmapBody>(*lexicalGlobalObject, *callFrame, "generateMipmap");
8307}
8308
8309#endif
8310
8311#if ENABLE(WEBGL)
8312static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_getActiveAttribBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
8313{
8314 auto& vm = JSC::getVM(lexicalGlobalObject);
8315 auto throwScope = DECLARE_THROW_SCOPE(vm);
8316 UNUSED_PARAM(throwScope);
8317 UNUSED_PARAM(callFrame);
8318 auto& impl = castedThis->wrapped();
8319 if (UNLIKELY(callFrame->argumentCount() < 2))
8320 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
8321 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
8322 auto program = convert<IDLInterface<WebGLProgram>>(*lexicalGlobalObject, argument0.value(), [](JSC::JSGlobalObject& lexicalGlobalObject, JSC::ThrowScope& scope) { throwArgumentTypeError(lexicalGlobalObject, scope, 0, "program", "WebGLRenderingContext", "getActiveAttrib", "WebGLProgram"); });
8323 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
8324 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
8325 auto index = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument1.value());
8326 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
8327 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
8328 InspectorCanvasCallTracer::recordAction(impl, "getActiveAttrib"_s, { InspectorCanvasCallTracer::processArgument(impl, program), InspectorCanvasCallTracer::processArgument(impl, index) });
8329 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLInterface<WebGLActiveInfo>>(*lexicalGlobalObject, *castedThis->globalObject(), throwScope, impl.getActiveAttrib(*program, WTFMove(index)))));
8330}
8331
8332JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_getActiveAttrib, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
8333{
8334 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_getActiveAttribBody>(*lexicalGlobalObject, *callFrame, "getActiveAttrib");
8335}
8336
8337#endif
8338
8339#if ENABLE(WEBGL)
8340static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_getActiveUniformBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
8341{
8342 auto& vm = JSC::getVM(lexicalGlobalObject);
8343 auto throwScope = DECLARE_THROW_SCOPE(vm);
8344 UNUSED_PARAM(throwScope);
8345 UNUSED_PARAM(callFrame);
8346 auto& impl = castedThis->wrapped();
8347 if (UNLIKELY(callFrame->argumentCount() < 2))
8348 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
8349 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
8350 auto program = convert<IDLInterface<WebGLProgram>>(*lexicalGlobalObject, argument0.value(), [](JSC::JSGlobalObject& lexicalGlobalObject, JSC::ThrowScope& scope) { throwArgumentTypeError(lexicalGlobalObject, scope, 0, "program", "WebGLRenderingContext", "getActiveUniform", "WebGLProgram"); });
8351 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
8352 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
8353 auto index = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument1.value());
8354 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
8355 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
8356 InspectorCanvasCallTracer::recordAction(impl, "getActiveUniform"_s, { InspectorCanvasCallTracer::processArgument(impl, program), InspectorCanvasCallTracer::processArgument(impl, index) });
8357 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLInterface<WebGLActiveInfo>>(*lexicalGlobalObject, *castedThis->globalObject(), throwScope, impl.getActiveUniform(*program, WTFMove(index)))));
8358}
8359
8360JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_getActiveUniform, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
8361{
8362 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_getActiveUniformBody>(*lexicalGlobalObject, *callFrame, "getActiveUniform");
8363}
8364
8365#endif
8366
8367#if ENABLE(WEBGL)
8368static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_getAttachedShadersBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
8369{
8370 auto& vm = JSC::getVM(lexicalGlobalObject);
8371 auto throwScope = DECLARE_THROW_SCOPE(vm);
8372 UNUSED_PARAM(throwScope);
8373 UNUSED_PARAM(callFrame);
8374 auto& impl = castedThis->wrapped();
8375 if (UNLIKELY(callFrame->argumentCount() < 1))
8376 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
8377 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
8378 auto program = convert<IDLInterface<WebGLProgram>>(*lexicalGlobalObject, argument0.value(), [](JSC::JSGlobalObject& lexicalGlobalObject, JSC::ThrowScope& scope) { throwArgumentTypeError(lexicalGlobalObject, scope, 0, "program", "WebGLRenderingContext", "getAttachedShaders", "WebGLProgram"); });
8379 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
8380 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
8381 InspectorCanvasCallTracer::recordAction(impl, "getAttachedShaders"_s, { InspectorCanvasCallTracer::processArgument(impl, program) });
8382 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLNullable<IDLSequence<IDLInterface<WebGLShader>>>>(*lexicalGlobalObject, *castedThis->globalObject(), throwScope, impl.getAttachedShaders(*program))));
8383}
8384
8385JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_getAttachedShaders, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
8386{
8387 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_getAttachedShadersBody>(*lexicalGlobalObject, *callFrame, "getAttachedShaders");
8388}
8389
8390#endif
8391
8392#if ENABLE(WEBGL)
8393static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_getAttribLocationBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
8394{
8395 auto& vm = JSC::getVM(lexicalGlobalObject);
8396 auto throwScope = DECLARE_THROW_SCOPE(vm);
8397 UNUSED_PARAM(throwScope);
8398 UNUSED_PARAM(callFrame);
8399 auto& impl = castedThis->wrapped();
8400 if (UNLIKELY(callFrame->argumentCount() < 2))
8401 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
8402 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
8403 auto program = convert<IDLInterface<WebGLProgram>>(*lexicalGlobalObject, argument0.value(), [](JSC::JSGlobalObject& lexicalGlobalObject, JSC::ThrowScope& scope) { throwArgumentTypeError(lexicalGlobalObject, scope, 0, "program", "WebGLRenderingContext", "getAttribLocation", "WebGLProgram"); });
8404 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
8405 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
8406 auto name = convert<IDLDOMString>(*lexicalGlobalObject, argument1.value());
8407 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
8408 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
8409 InspectorCanvasCallTracer::recordAction(impl, "getAttribLocation"_s, { InspectorCanvasCallTracer::processArgument(impl, program), InspectorCanvasCallTracer::processArgument(impl, name) });
8410 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLLong>(*lexicalGlobalObject, throwScope, impl.getAttribLocation(*program, WTFMove(name)))));
8411}
8412
8413JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_getAttribLocation, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
8414{
8415 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_getAttribLocationBody>(*lexicalGlobalObject, *callFrame, "getAttribLocation");
8416}
8417
8418#endif
8419
8420#if ENABLE(WEBGL)
8421static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_getBufferParameterBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
8422{
8423 auto& vm = JSC::getVM(lexicalGlobalObject);
8424 auto throwScope = DECLARE_THROW_SCOPE(vm);
8425 UNUSED_PARAM(throwScope);
8426 UNUSED_PARAM(callFrame);
8427 auto& impl = castedThis->wrapped();
8428 if (UNLIKELY(callFrame->argumentCount() < 2))
8429 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
8430 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
8431 auto target = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument0.value());
8432 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
8433 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
8434 auto pname = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument1.value());
8435 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
8436 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
8437 InspectorCanvasCallTracer::recordAction(impl, "getBufferParameter"_s, { InspectorCanvasCallTracer::processArgument(impl, target), InspectorCanvasCallTracer::processArgument(impl, pname) });
8438 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLWebGLAny>(*lexicalGlobalObject, *castedThis->globalObject(), throwScope, impl.getBufferParameter(WTFMove(target), WTFMove(pname)))));
8439}
8440
8441JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_getBufferParameter, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
8442{
8443 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_getBufferParameterBody>(*lexicalGlobalObject, *callFrame, "getBufferParameter");
8444}
8445
8446#endif
8447
8448#if ENABLE(WEBGL)
8449static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_getContextAttributesBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
8450{
8451 auto& vm = JSC::getVM(lexicalGlobalObject);
8452 auto throwScope = DECLARE_THROW_SCOPE(vm);
8453 UNUSED_PARAM(throwScope);
8454 UNUSED_PARAM(callFrame);
8455 auto& impl = castedThis->wrapped();
8456 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
8457 InspectorCanvasCallTracer::recordAction(impl, "getContextAttributes"_s);
8458 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLNullable<IDLDictionary<WebGLContextAttributes>>>(*lexicalGlobalObject, *castedThis->globalObject(), throwScope, impl.getContextAttributes())));
8459}
8460
8461JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_getContextAttributes, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
8462{
8463 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_getContextAttributesBody>(*lexicalGlobalObject, *callFrame, "getContextAttributes");
8464}
8465
8466#endif
8467
8468#if ENABLE(WEBGL)
8469static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_getErrorBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
8470{
8471 auto& vm = JSC::getVM(lexicalGlobalObject);
8472 auto throwScope = DECLARE_THROW_SCOPE(vm);
8473 UNUSED_PARAM(throwScope);
8474 UNUSED_PARAM(callFrame);
8475 auto& impl = castedThis->wrapped();
8476 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
8477 InspectorCanvasCallTracer::recordAction(impl, "getError"_s);
8478 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUnsignedLong>(*lexicalGlobalObject, throwScope, impl.getError())));
8479}
8480
8481JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_getError, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
8482{
8483 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_getErrorBody>(*lexicalGlobalObject, *callFrame, "getError");
8484}
8485
8486#endif
8487
8488#if ENABLE(WEBGL)
8489static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_getSupportedExtensionsBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
8490{
8491 auto& vm = JSC::getVM(lexicalGlobalObject);
8492 auto throwScope = DECLARE_THROW_SCOPE(vm);
8493 UNUSED_PARAM(throwScope);
8494 UNUSED_PARAM(callFrame);
8495 auto& impl = castedThis->wrapped();
8496 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
8497 InspectorCanvasCallTracer::recordAction(impl, "getSupportedExtensions"_s);
8498 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLNullable<IDLSequence<IDLDOMString>>>(*lexicalGlobalObject, *castedThis->globalObject(), throwScope, impl.getSupportedExtensions())));
8499}
8500
8501JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_getSupportedExtensions, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
8502{
8503 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_getSupportedExtensionsBody>(*lexicalGlobalObject, *callFrame, "getSupportedExtensions");
8504}
8505
8506#endif
8507
8508#if ENABLE(WEBGL)
8509static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_getExtensionBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
8510{
8511 auto& vm = JSC::getVM(lexicalGlobalObject);
8512 auto throwScope = DECLARE_THROW_SCOPE(vm);
8513 UNUSED_PARAM(throwScope);
8514 UNUSED_PARAM(callFrame);
8515 auto& impl = castedThis->wrapped();
8516 if (UNLIKELY(callFrame->argumentCount() < 1))
8517 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
8518 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
8519 auto name = convert<IDLDOMString>(*lexicalGlobalObject, argument0.value());
8520 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
8521 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
8522 InspectorCanvasCallTracer::recordAction(impl, "getExtension"_s, { InspectorCanvasCallTracer::processArgument(impl, name) });
8523 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLNullable<IDLWebGLExtension>>(*lexicalGlobalObject, *castedThis->globalObject(), throwScope, impl.getExtension(WTFMove(name)))));
8524}
8525
8526JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_getExtension, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
8527{
8528 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_getExtensionBody>(*lexicalGlobalObject, *callFrame, "getExtension");
8529}
8530
8531#endif
8532
8533#if ENABLE(WEBGL)
8534static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_getFramebufferAttachmentParameterBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
8535{
8536 auto& vm = JSC::getVM(lexicalGlobalObject);
8537 auto throwScope = DECLARE_THROW_SCOPE(vm);
8538 UNUSED_PARAM(throwScope);
8539 UNUSED_PARAM(callFrame);
8540 auto& impl = castedThis->wrapped();
8541 if (UNLIKELY(callFrame->argumentCount() < 3))
8542 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
8543 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
8544 auto target = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument0.value());
8545 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
8546 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
8547 auto attachment = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument1.value());
8548 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
8549 EnsureStillAliveScope argument2 = callFrame->uncheckedArgument(2);
8550 auto pname = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument2.value());
8551 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
8552 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
8553 InspectorCanvasCallTracer::recordAction(impl, "getFramebufferAttachmentParameter"_s, { InspectorCanvasCallTracer::processArgument(impl, target), InspectorCanvasCallTracer::processArgument(impl, attachment), InspectorCanvasCallTracer::processArgument(impl, pname) });
8554 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLWebGLAny>(*lexicalGlobalObject, *castedThis->globalObject(), throwScope, impl.getFramebufferAttachmentParameter(WTFMove(target), WTFMove(attachment), WTFMove(pname)))));
8555}
8556
8557JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_getFramebufferAttachmentParameter, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
8558{
8559 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_getFramebufferAttachmentParameterBody>(*lexicalGlobalObject, *callFrame, "getFramebufferAttachmentParameter");
8560}
8561
8562#endif
8563
8564#if ENABLE(WEBGL)
8565static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_getParameterBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
8566{
8567 auto& vm = JSC::getVM(lexicalGlobalObject);
8568 auto throwScope = DECLARE_THROW_SCOPE(vm);
8569 UNUSED_PARAM(throwScope);
8570 UNUSED_PARAM(callFrame);
8571 auto& impl = castedThis->wrapped();
8572 if (UNLIKELY(callFrame->argumentCount() < 1))
8573 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
8574 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
8575 auto pname = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument0.value());
8576 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
8577 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
8578 InspectorCanvasCallTracer::recordAction(impl, "getParameter"_s, { InspectorCanvasCallTracer::processArgument(impl, pname) });
8579 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLWebGLAny>(*lexicalGlobalObject, *castedThis->globalObject(), throwScope, impl.getParameter(WTFMove(pname)))));
8580}
8581
8582JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_getParameter, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
8583{
8584 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_getParameterBody>(*lexicalGlobalObject, *callFrame, "getParameter");
8585}
8586
8587#endif
8588
8589#if ENABLE(WEBGL)
8590static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_getProgramParameterBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
8591{
8592 auto& vm = JSC::getVM(lexicalGlobalObject);
8593 auto throwScope = DECLARE_THROW_SCOPE(vm);
8594 UNUSED_PARAM(throwScope);
8595 UNUSED_PARAM(callFrame);
8596 auto& impl = castedThis->wrapped();
8597 if (UNLIKELY(callFrame->argumentCount() < 2))
8598 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
8599 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
8600 auto program = convert<IDLInterface<WebGLProgram>>(*lexicalGlobalObject, argument0.value(), [](JSC::JSGlobalObject& lexicalGlobalObject, JSC::ThrowScope& scope) { throwArgumentTypeError(lexicalGlobalObject, scope, 0, "program", "WebGLRenderingContext", "getProgramParameter", "WebGLProgram"); });
8601 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
8602 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
8603 auto pname = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument1.value());
8604 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
8605 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
8606 InspectorCanvasCallTracer::recordAction(impl, "getProgramParameter"_s, { InspectorCanvasCallTracer::processArgument(impl, program), InspectorCanvasCallTracer::processArgument(impl, pname) });
8607 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLWebGLAny>(*lexicalGlobalObject, *castedThis->globalObject(), throwScope, impl.getProgramParameter(*program, WTFMove(pname)))));
8608}
8609
8610JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_getProgramParameter, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
8611{
8612 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_getProgramParameterBody>(*lexicalGlobalObject, *callFrame, "getProgramParameter");
8613}
8614
8615#endif
8616
8617#if ENABLE(WEBGL)
8618static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_getProgramInfoLogBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
8619{
8620 auto& vm = JSC::getVM(lexicalGlobalObject);
8621 auto throwScope = DECLARE_THROW_SCOPE(vm);
8622 UNUSED_PARAM(throwScope);
8623 UNUSED_PARAM(callFrame);
8624 auto& impl = castedThis->wrapped();
8625 if (UNLIKELY(callFrame->argumentCount() < 1))
8626 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
8627 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
8628 auto program = convert<IDLInterface<WebGLProgram>>(*lexicalGlobalObject, argument0.value(), [](JSC::JSGlobalObject& lexicalGlobalObject, JSC::ThrowScope& scope) { throwArgumentTypeError(lexicalGlobalObject, scope, 0, "program", "WebGLRenderingContext", "getProgramInfoLog", "WebGLProgram"); });
8629 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
8630 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
8631 InspectorCanvasCallTracer::recordAction(impl, "getProgramInfoLog"_s, { InspectorCanvasCallTracer::processArgument(impl, program) });
8632 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLNullable<IDLDOMString>>(*lexicalGlobalObject, throwScope, impl.getProgramInfoLog(*program))));
8633}
8634
8635JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_getProgramInfoLog, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
8636{
8637 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_getProgramInfoLogBody>(*lexicalGlobalObject, *callFrame, "getProgramInfoLog");
8638}
8639
8640#endif
8641
8642#if ENABLE(WEBGL)
8643static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_getRenderbufferParameterBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
8644{
8645 auto& vm = JSC::getVM(lexicalGlobalObject);
8646 auto throwScope = DECLARE_THROW_SCOPE(vm);
8647 UNUSED_PARAM(throwScope);
8648 UNUSED_PARAM(callFrame);
8649 auto& impl = castedThis->wrapped();
8650 if (UNLIKELY(callFrame->argumentCount() < 2))
8651 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
8652 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
8653 auto target = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument0.value());
8654 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
8655 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
8656 auto pname = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument1.value());
8657 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
8658 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
8659 InspectorCanvasCallTracer::recordAction(impl, "getRenderbufferParameter"_s, { InspectorCanvasCallTracer::processArgument(impl, target), InspectorCanvasCallTracer::processArgument(impl, pname) });
8660 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLWebGLAny>(*lexicalGlobalObject, *castedThis->globalObject(), throwScope, impl.getRenderbufferParameter(WTFMove(target), WTFMove(pname)))));
8661}
8662
8663JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_getRenderbufferParameter, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
8664{
8665 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_getRenderbufferParameterBody>(*lexicalGlobalObject, *callFrame, "getRenderbufferParameter");
8666}
8667
8668#endif
8669
8670#if ENABLE(WEBGL)
8671static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_getShaderParameterBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
8672{
8673 auto& vm = JSC::getVM(lexicalGlobalObject);
8674 auto throwScope = DECLARE_THROW_SCOPE(vm);
8675 UNUSED_PARAM(throwScope);
8676 UNUSED_PARAM(callFrame);
8677 auto& impl = castedThis->wrapped();
8678 if (UNLIKELY(callFrame->argumentCount() < 2))
8679 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
8680 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
8681 auto shader = convert<IDLInterface<WebGLShader>>(*lexicalGlobalObject, argument0.value(), [](JSC::JSGlobalObject& lexicalGlobalObject, JSC::ThrowScope& scope) { throwArgumentTypeError(lexicalGlobalObject, scope, 0, "shader", "WebGLRenderingContext", "getShaderParameter", "WebGLShader"); });
8682 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
8683 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
8684 auto pname = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument1.value());
8685 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
8686 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
8687 InspectorCanvasCallTracer::recordAction(impl, "getShaderParameter"_s, { InspectorCanvasCallTracer::processArgument(impl, shader), InspectorCanvasCallTracer::processArgument(impl, pname) });
8688 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLWebGLAny>(*lexicalGlobalObject, *castedThis->globalObject(), throwScope, impl.getShaderParameter(*shader, WTFMove(pname)))));
8689}
8690
8691JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_getShaderParameter, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
8692{
8693 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_getShaderParameterBody>(*lexicalGlobalObject, *callFrame, "getShaderParameter");
8694}
8695
8696#endif
8697
8698#if ENABLE(WEBGL)
8699static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_getShaderInfoLogBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
8700{
8701 auto& vm = JSC::getVM(lexicalGlobalObject);
8702 auto throwScope = DECLARE_THROW_SCOPE(vm);
8703 UNUSED_PARAM(throwScope);
8704 UNUSED_PARAM(callFrame);
8705 auto& impl = castedThis->wrapped();
8706 if (UNLIKELY(callFrame->argumentCount() < 1))
8707 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
8708 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
8709 auto shader = convert<IDLInterface<WebGLShader>>(*lexicalGlobalObject, argument0.value(), [](JSC::JSGlobalObject& lexicalGlobalObject, JSC::ThrowScope& scope) { throwArgumentTypeError(lexicalGlobalObject, scope, 0, "shader", "WebGLRenderingContext", "getShaderInfoLog", "WebGLShader"); });
8710 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
8711 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
8712 InspectorCanvasCallTracer::recordAction(impl, "getShaderInfoLog"_s, { InspectorCanvasCallTracer::processArgument(impl, shader) });
8713 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLNullable<IDLDOMString>>(*lexicalGlobalObject, throwScope, impl.getShaderInfoLog(*shader))));
8714}
8715
8716JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_getShaderInfoLog, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
8717{
8718 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_getShaderInfoLogBody>(*lexicalGlobalObject, *callFrame, "getShaderInfoLog");
8719}
8720
8721#endif
8722
8723#if ENABLE(WEBGL)
8724static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_getShaderPrecisionFormatBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
8725{
8726 auto& vm = JSC::getVM(lexicalGlobalObject);
8727 auto throwScope = DECLARE_THROW_SCOPE(vm);
8728 UNUSED_PARAM(throwScope);
8729 UNUSED_PARAM(callFrame);
8730 auto& impl = castedThis->wrapped();
8731 if (UNLIKELY(callFrame->argumentCount() < 2))
8732 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
8733 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
8734 auto shadertype = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument0.value());
8735 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
8736 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
8737 auto precisiontype = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument1.value());
8738 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
8739 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
8740 InspectorCanvasCallTracer::recordAction(impl, "getShaderPrecisionFormat"_s, { InspectorCanvasCallTracer::processArgument(impl, shadertype), InspectorCanvasCallTracer::processArgument(impl, precisiontype) });
8741 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLInterface<WebGLShaderPrecisionFormat>>(*lexicalGlobalObject, *castedThis->globalObject(), throwScope, impl.getShaderPrecisionFormat(WTFMove(shadertype), WTFMove(precisiontype)))));
8742}
8743
8744JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_getShaderPrecisionFormat, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
8745{
8746 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_getShaderPrecisionFormatBody>(*lexicalGlobalObject, *callFrame, "getShaderPrecisionFormat");
8747}
8748
8749#endif
8750
8751#if ENABLE(WEBGL)
8752static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_getShaderSourceBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
8753{
8754 auto& vm = JSC::getVM(lexicalGlobalObject);
8755 auto throwScope = DECLARE_THROW_SCOPE(vm);
8756 UNUSED_PARAM(throwScope);
8757 UNUSED_PARAM(callFrame);
8758 auto& impl = castedThis->wrapped();
8759 if (UNLIKELY(callFrame->argumentCount() < 1))
8760 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
8761 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
8762 auto shader = convert<IDLInterface<WebGLShader>>(*lexicalGlobalObject, argument0.value(), [](JSC::JSGlobalObject& lexicalGlobalObject, JSC::ThrowScope& scope) { throwArgumentTypeError(lexicalGlobalObject, scope, 0, "shader", "WebGLRenderingContext", "getShaderSource", "WebGLShader"); });
8763 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
8764 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
8765 InspectorCanvasCallTracer::recordAction(impl, "getShaderSource"_s, { InspectorCanvasCallTracer::processArgument(impl, shader) });
8766 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLNullable<IDLDOMString>>(*lexicalGlobalObject, throwScope, impl.getShaderSource(*shader))));
8767}
8768
8769JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_getShaderSource, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
8770{
8771 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_getShaderSourceBody>(*lexicalGlobalObject, *callFrame, "getShaderSource");
8772}
8773
8774#endif
8775
8776#if ENABLE(WEBGL)
8777static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_getTexParameterBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
8778{
8779 auto& vm = JSC::getVM(lexicalGlobalObject);
8780 auto throwScope = DECLARE_THROW_SCOPE(vm);
8781 UNUSED_PARAM(throwScope);
8782 UNUSED_PARAM(callFrame);
8783 auto& impl = castedThis->wrapped();
8784 if (UNLIKELY(callFrame->argumentCount() < 2))
8785 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
8786 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
8787 auto target = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument0.value());
8788 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
8789 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
8790 auto pname = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument1.value());
8791 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
8792 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
8793 InspectorCanvasCallTracer::recordAction(impl, "getTexParameter"_s, { InspectorCanvasCallTracer::processArgument(impl, target), InspectorCanvasCallTracer::processArgument(impl, pname) });
8794 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLWebGLAny>(*lexicalGlobalObject, *castedThis->globalObject(), throwScope, impl.getTexParameter(WTFMove(target), WTFMove(pname)))));
8795}
8796
8797JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_getTexParameter, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
8798{
8799 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_getTexParameterBody>(*lexicalGlobalObject, *callFrame, "getTexParameter");
8800}
8801
8802#endif
8803
8804#if ENABLE(WEBGL)
8805static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_getUniformBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
8806{
8807 auto& vm = JSC::getVM(lexicalGlobalObject);
8808 auto throwScope = DECLARE_THROW_SCOPE(vm);
8809 UNUSED_PARAM(throwScope);
8810 UNUSED_PARAM(callFrame);
8811 auto& impl = castedThis->wrapped();
8812 if (UNLIKELY(callFrame->argumentCount() < 2))
8813 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
8814 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
8815 auto program = convert<IDLInterface<WebGLProgram>>(*lexicalGlobalObject, argument0.value(), [](JSC::JSGlobalObject& lexicalGlobalObject, JSC::ThrowScope& scope) { throwArgumentTypeError(lexicalGlobalObject, scope, 0, "program", "WebGLRenderingContext", "getUniform", "WebGLProgram"); });
8816 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
8817 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
8818 auto location = convert<IDLInterface<WebGLUniformLocation>>(*lexicalGlobalObject, argument1.value(), [](JSC::JSGlobalObject& lexicalGlobalObject, JSC::ThrowScope& scope) { throwArgumentTypeError(lexicalGlobalObject, scope, 1, "location", "WebGLRenderingContext", "getUniform", "WebGLUniformLocation"); });
8819 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
8820 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
8821 InspectorCanvasCallTracer::recordAction(impl, "getUniform"_s, { InspectorCanvasCallTracer::processArgument(impl, program), InspectorCanvasCallTracer::processArgument(impl, location) });
8822 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLWebGLAny>(*lexicalGlobalObject, *castedThis->globalObject(), throwScope, impl.getUniform(*program, *location))));
8823}
8824
8825JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_getUniform, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
8826{
8827 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_getUniformBody>(*lexicalGlobalObject, *callFrame, "getUniform");
8828}
8829
8830#endif
8831
8832#if ENABLE(WEBGL)
8833static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_getUniformLocationBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
8834{
8835 auto& vm = JSC::getVM(lexicalGlobalObject);
8836 auto throwScope = DECLARE_THROW_SCOPE(vm);
8837 UNUSED_PARAM(throwScope);
8838 UNUSED_PARAM(callFrame);
8839 auto& impl = castedThis->wrapped();
8840 if (UNLIKELY(callFrame->argumentCount() < 2))
8841 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
8842 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
8843 auto program = convert<IDLInterface<WebGLProgram>>(*lexicalGlobalObject, argument0.value(), [](JSC::JSGlobalObject& lexicalGlobalObject, JSC::ThrowScope& scope) { throwArgumentTypeError(lexicalGlobalObject, scope, 0, "program", "WebGLRenderingContext", "getUniformLocation", "WebGLProgram"); });
8844 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
8845 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
8846 auto name = convert<IDLDOMString>(*lexicalGlobalObject, argument1.value());
8847 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
8848 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
8849 InspectorCanvasCallTracer::recordAction(impl, "getUniformLocation"_s, { InspectorCanvasCallTracer::processArgument(impl, program), InspectorCanvasCallTracer::processArgument(impl, name) });
8850 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLInterface<WebGLUniformLocation>>(*lexicalGlobalObject, *castedThis->globalObject(), throwScope, impl.getUniformLocation(*program, WTFMove(name)))));
8851}
8852
8853JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_getUniformLocation, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
8854{
8855 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_getUniformLocationBody>(*lexicalGlobalObject, *callFrame, "getUniformLocation");
8856}
8857
8858#endif
8859
8860#if ENABLE(WEBGL)
8861static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_getVertexAttribBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
8862{
8863 auto& vm = JSC::getVM(lexicalGlobalObject);
8864 auto throwScope = DECLARE_THROW_SCOPE(vm);
8865 UNUSED_PARAM(throwScope);
8866 UNUSED_PARAM(callFrame);
8867 auto& impl = castedThis->wrapped();
8868 if (UNLIKELY(callFrame->argumentCount() < 2))
8869 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
8870 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
8871 auto index = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument0.value());
8872 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
8873 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
8874 auto pname = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument1.value());
8875 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
8876 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
8877 InspectorCanvasCallTracer::recordAction(impl, "getVertexAttrib"_s, { InspectorCanvasCallTracer::processArgument(impl, index), InspectorCanvasCallTracer::processArgument(impl, pname) });
8878 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLWebGLAny>(*lexicalGlobalObject, *castedThis->globalObject(), throwScope, impl.getVertexAttrib(WTFMove(index), WTFMove(pname)))));
8879}
8880
8881JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_getVertexAttrib, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
8882{
8883 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_getVertexAttribBody>(*lexicalGlobalObject, *callFrame, "getVertexAttrib");
8884}
8885
8886#endif
8887
8888#if ENABLE(WEBGL)
8889static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_getVertexAttribOffsetBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
8890{
8891 auto& vm = JSC::getVM(lexicalGlobalObject);
8892 auto throwScope = DECLARE_THROW_SCOPE(vm);
8893 UNUSED_PARAM(throwScope);
8894 UNUSED_PARAM(callFrame);
8895 auto& impl = castedThis->wrapped();
8896 if (UNLIKELY(callFrame->argumentCount() < 2))
8897 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
8898 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
8899 auto index = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument0.value());
8900 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
8901 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
8902 auto pname = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument1.value());
8903 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
8904 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
8905 InspectorCanvasCallTracer::recordAction(impl, "getVertexAttribOffset"_s, { InspectorCanvasCallTracer::processArgument(impl, index), InspectorCanvasCallTracer::processArgument(impl, pname) });
8906 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLLongLong>(*lexicalGlobalObject, throwScope, impl.getVertexAttribOffset(WTFMove(index), WTFMove(pname)))));
8907}
8908
8909JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_getVertexAttribOffset, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
8910{
8911 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_getVertexAttribOffsetBody>(*lexicalGlobalObject, *callFrame, "getVertexAttribOffset");
8912}
8913
8914#endif
8915
8916#if ENABLE(WEBGL)
8917static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_hintBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
8918{
8919 auto& vm = JSC::getVM(lexicalGlobalObject);
8920 auto throwScope = DECLARE_THROW_SCOPE(vm);
8921 UNUSED_PARAM(throwScope);
8922 UNUSED_PARAM(callFrame);
8923 auto& impl = castedThis->wrapped();
8924 if (UNLIKELY(callFrame->argumentCount() < 2))
8925 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
8926 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
8927 auto target = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument0.value());
8928 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
8929 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
8930 auto mode = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument1.value());
8931 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
8932 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
8933 InspectorCanvasCallTracer::recordAction(impl, "hint"_s, { InspectorCanvasCallTracer::processArgument(impl, target), InspectorCanvasCallTracer::processArgument(impl, mode) });
8934 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.hint(WTFMove(target), WTFMove(mode)); })));
8935}
8936
8937JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_hint, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
8938{
8939 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_hintBody>(*lexicalGlobalObject, *callFrame, "hint");
8940}
8941
8942#endif
8943
8944#if ENABLE(WEBGL)
8945static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_isBufferBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
8946{
8947 auto& vm = JSC::getVM(lexicalGlobalObject);
8948 auto throwScope = DECLARE_THROW_SCOPE(vm);
8949 UNUSED_PARAM(throwScope);
8950 UNUSED_PARAM(callFrame);
8951 auto& impl = castedThis->wrapped();
8952 if (UNLIKELY(callFrame->argumentCount() < 1))
8953 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
8954 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
8955 auto buffer = convert<IDLNullable<IDLInterface<WebGLBuffer>>>(*lexicalGlobalObject, argument0.value(), [](JSC::JSGlobalObject& lexicalGlobalObject, JSC::ThrowScope& scope) { throwArgumentTypeError(lexicalGlobalObject, scope, 0, "buffer", "WebGLRenderingContext", "isBuffer", "WebGLBuffer"); });
8956 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
8957 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
8958 InspectorCanvasCallTracer::recordAction(impl, "isBuffer"_s, { InspectorCanvasCallTracer::processArgument(impl, buffer) });
8959 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLBoolean>(*lexicalGlobalObject, throwScope, impl.isBuffer(WTFMove(buffer)))));
8960}
8961
8962JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_isBuffer, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
8963{
8964 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_isBufferBody>(*lexicalGlobalObject, *callFrame, "isBuffer");
8965}
8966
8967#endif
8968
8969#if ENABLE(WEBGL)
8970static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_isContextLostBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
8971{
8972 auto& vm = JSC::getVM(lexicalGlobalObject);
8973 auto throwScope = DECLARE_THROW_SCOPE(vm);
8974 UNUSED_PARAM(throwScope);
8975 UNUSED_PARAM(callFrame);
8976 auto& impl = castedThis->wrapped();
8977 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
8978 InspectorCanvasCallTracer::recordAction(impl, "isContextLost"_s);
8979 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLBoolean>(*lexicalGlobalObject, throwScope, impl.isContextLost())));
8980}
8981
8982JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_isContextLost, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
8983{
8984 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_isContextLostBody>(*lexicalGlobalObject, *callFrame, "isContextLost");
8985}
8986
8987#endif
8988
8989#if ENABLE(WEBGL)
8990static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_isEnabledBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
8991{
8992 auto& vm = JSC::getVM(lexicalGlobalObject);
8993 auto throwScope = DECLARE_THROW_SCOPE(vm);
8994 UNUSED_PARAM(throwScope);
8995 UNUSED_PARAM(callFrame);
8996 auto& impl = castedThis->wrapped();
8997 if (UNLIKELY(callFrame->argumentCount() < 1))
8998 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
8999 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
9000 auto cap = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument0.value());
9001 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9002 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
9003 InspectorCanvasCallTracer::recordAction(impl, "isEnabled"_s, { InspectorCanvasCallTracer::processArgument(impl, cap) });
9004 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLBoolean>(*lexicalGlobalObject, throwScope, impl.isEnabled(WTFMove(cap)))));
9005}
9006
9007JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_isEnabled, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
9008{
9009 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_isEnabledBody>(*lexicalGlobalObject, *callFrame, "isEnabled");
9010}
9011
9012#endif
9013
9014#if ENABLE(WEBGL)
9015static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_isFramebufferBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
9016{
9017 auto& vm = JSC::getVM(lexicalGlobalObject);
9018 auto throwScope = DECLARE_THROW_SCOPE(vm);
9019 UNUSED_PARAM(throwScope);
9020 UNUSED_PARAM(callFrame);
9021 auto& impl = castedThis->wrapped();
9022 if (UNLIKELY(callFrame->argumentCount() < 1))
9023 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
9024 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
9025 auto framebuffer = convert<IDLNullable<IDLInterface<WebGLFramebuffer>>>(*lexicalGlobalObject, argument0.value(), [](JSC::JSGlobalObject& lexicalGlobalObject, JSC::ThrowScope& scope) { throwArgumentTypeError(lexicalGlobalObject, scope, 0, "framebuffer", "WebGLRenderingContext", "isFramebuffer", "WebGLFramebuffer"); });
9026 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9027 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
9028 InspectorCanvasCallTracer::recordAction(impl, "isFramebuffer"_s, { InspectorCanvasCallTracer::processArgument(impl, framebuffer) });
9029 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLBoolean>(*lexicalGlobalObject, throwScope, impl.isFramebuffer(WTFMove(framebuffer)))));
9030}
9031
9032JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_isFramebuffer, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
9033{
9034 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_isFramebufferBody>(*lexicalGlobalObject, *callFrame, "isFramebuffer");
9035}
9036
9037#endif
9038
9039#if ENABLE(WEBGL)
9040static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_isProgramBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
9041{
9042 auto& vm = JSC::getVM(lexicalGlobalObject);
9043 auto throwScope = DECLARE_THROW_SCOPE(vm);
9044 UNUSED_PARAM(throwScope);
9045 UNUSED_PARAM(callFrame);
9046 auto& impl = castedThis->wrapped();
9047 if (UNLIKELY(callFrame->argumentCount() < 1))
9048 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
9049 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
9050 auto program = convert<IDLNullable<IDLInterface<WebGLProgram>>>(*lexicalGlobalObject, argument0.value(), [](JSC::JSGlobalObject& lexicalGlobalObject, JSC::ThrowScope& scope) { throwArgumentTypeError(lexicalGlobalObject, scope, 0, "program", "WebGLRenderingContext", "isProgram", "WebGLProgram"); });
9051 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9052 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
9053 InspectorCanvasCallTracer::recordAction(impl, "isProgram"_s, { InspectorCanvasCallTracer::processArgument(impl, program) });
9054 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLBoolean>(*lexicalGlobalObject, throwScope, impl.isProgram(WTFMove(program)))));
9055}
9056
9057JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_isProgram, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
9058{
9059 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_isProgramBody>(*lexicalGlobalObject, *callFrame, "isProgram");
9060}
9061
9062#endif
9063
9064#if ENABLE(WEBGL)
9065static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_isRenderbufferBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
9066{
9067 auto& vm = JSC::getVM(lexicalGlobalObject);
9068 auto throwScope = DECLARE_THROW_SCOPE(vm);
9069 UNUSED_PARAM(throwScope);
9070 UNUSED_PARAM(callFrame);
9071 auto& impl = castedThis->wrapped();
9072 if (UNLIKELY(callFrame->argumentCount() < 1))
9073 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
9074 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
9075 auto renderbuffer = convert<IDLNullable<IDLInterface<WebGLRenderbuffer>>>(*lexicalGlobalObject, argument0.value(), [](JSC::JSGlobalObject& lexicalGlobalObject, JSC::ThrowScope& scope) { throwArgumentTypeError(lexicalGlobalObject, scope, 0, "renderbuffer", "WebGLRenderingContext", "isRenderbuffer", "WebGLRenderbuffer"); });
9076 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9077 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
9078 InspectorCanvasCallTracer::recordAction(impl, "isRenderbuffer"_s, { InspectorCanvasCallTracer::processArgument(impl, renderbuffer) });
9079 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLBoolean>(*lexicalGlobalObject, throwScope, impl.isRenderbuffer(WTFMove(renderbuffer)))));
9080}
9081
9082JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_isRenderbuffer, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
9083{
9084 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_isRenderbufferBody>(*lexicalGlobalObject, *callFrame, "isRenderbuffer");
9085}
9086
9087#endif
9088
9089#if ENABLE(WEBGL)
9090static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_isShaderBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
9091{
9092 auto& vm = JSC::getVM(lexicalGlobalObject);
9093 auto throwScope = DECLARE_THROW_SCOPE(vm);
9094 UNUSED_PARAM(throwScope);
9095 UNUSED_PARAM(callFrame);
9096 auto& impl = castedThis->wrapped();
9097 if (UNLIKELY(callFrame->argumentCount() < 1))
9098 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
9099 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
9100 auto shader = convert<IDLNullable<IDLInterface<WebGLShader>>>(*lexicalGlobalObject, argument0.value(), [](JSC::JSGlobalObject& lexicalGlobalObject, JSC::ThrowScope& scope) { throwArgumentTypeError(lexicalGlobalObject, scope, 0, "shader", "WebGLRenderingContext", "isShader", "WebGLShader"); });
9101 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9102 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
9103 InspectorCanvasCallTracer::recordAction(impl, "isShader"_s, { InspectorCanvasCallTracer::processArgument(impl, shader) });
9104 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLBoolean>(*lexicalGlobalObject, throwScope, impl.isShader(WTFMove(shader)))));
9105}
9106
9107JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_isShader, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
9108{
9109 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_isShaderBody>(*lexicalGlobalObject, *callFrame, "isShader");
9110}
9111
9112#endif
9113
9114#if ENABLE(WEBGL)
9115static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_isTextureBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
9116{
9117 auto& vm = JSC::getVM(lexicalGlobalObject);
9118 auto throwScope = DECLARE_THROW_SCOPE(vm);
9119 UNUSED_PARAM(throwScope);
9120 UNUSED_PARAM(callFrame);
9121 auto& impl = castedThis->wrapped();
9122 if (UNLIKELY(callFrame->argumentCount() < 1))
9123 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
9124 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
9125 auto texture = convert<IDLNullable<IDLInterface<WebGLTexture>>>(*lexicalGlobalObject, argument0.value(), [](JSC::JSGlobalObject& lexicalGlobalObject, JSC::ThrowScope& scope) { throwArgumentTypeError(lexicalGlobalObject, scope, 0, "texture", "WebGLRenderingContext", "isTexture", "WebGLTexture"); });
9126 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9127 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
9128 InspectorCanvasCallTracer::recordAction(impl, "isTexture"_s, { InspectorCanvasCallTracer::processArgument(impl, texture) });
9129 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLBoolean>(*lexicalGlobalObject, throwScope, impl.isTexture(WTFMove(texture)))));
9130}
9131
9132JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_isTexture, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
9133{
9134 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_isTextureBody>(*lexicalGlobalObject, *callFrame, "isTexture");
9135}
9136
9137#endif
9138
9139#if ENABLE(WEBGL)
9140static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_lineWidthBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
9141{
9142 auto& vm = JSC::getVM(lexicalGlobalObject);
9143 auto throwScope = DECLARE_THROW_SCOPE(vm);
9144 UNUSED_PARAM(throwScope);
9145 UNUSED_PARAM(callFrame);
9146 auto& impl = castedThis->wrapped();
9147 if (UNLIKELY(callFrame->argumentCount() < 1))
9148 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
9149 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
9150 auto width = convert<IDLUnrestrictedFloat>(*lexicalGlobalObject, argument0.value());
9151 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9152 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
9153 InspectorCanvasCallTracer::recordAction(impl, "lineWidth"_s, { InspectorCanvasCallTracer::processArgument(impl, width) });
9154 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.lineWidth(WTFMove(width)); })));
9155}
9156
9157JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_lineWidth, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
9158{
9159 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_lineWidthBody>(*lexicalGlobalObject, *callFrame, "lineWidth");
9160}
9161
9162#endif
9163
9164#if ENABLE(WEBGL)
9165static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_linkProgramBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
9166{
9167 auto& vm = JSC::getVM(lexicalGlobalObject);
9168 auto throwScope = DECLARE_THROW_SCOPE(vm);
9169 UNUSED_PARAM(throwScope);
9170 UNUSED_PARAM(callFrame);
9171 auto& impl = castedThis->wrapped();
9172 if (UNLIKELY(callFrame->argumentCount() < 1))
9173 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
9174 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
9175 auto program = convert<IDLInterface<WebGLProgram>>(*lexicalGlobalObject, argument0.value(), [](JSC::JSGlobalObject& lexicalGlobalObject, JSC::ThrowScope& scope) { throwArgumentTypeError(lexicalGlobalObject, scope, 0, "program", "WebGLRenderingContext", "linkProgram", "WebGLProgram"); });
9176 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9177 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
9178 InspectorCanvasCallTracer::recordAction(impl, "linkProgram"_s, { InspectorCanvasCallTracer::processArgument(impl, program) });
9179 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.linkProgram(*program); })));
9180}
9181
9182JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_linkProgram, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
9183{
9184 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_linkProgramBody>(*lexicalGlobalObject, *callFrame, "linkProgram");
9185}
9186
9187#endif
9188
9189#if ENABLE(WEBGL) && ENABLE(WEBXR)
9190static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_makeXRCompatibleBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperationReturningPromise<JSWebGLRenderingContext>::ClassParameter castedThis, Ref<DeferredPromise>&& promise)
9191{
9192 auto& vm = JSC::getVM(lexicalGlobalObject);
9193 auto throwScope = DECLARE_THROW_SCOPE(vm);
9194 UNUSED_PARAM(throwScope);
9195 UNUSED_PARAM(callFrame);
9196 auto& impl = castedThis->wrapped();
9197 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
9198 InspectorCanvasCallTracer::recordAction(impl, "makeXRCompatible"_s);
9199 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJSNewlyCreated<IDLPromise<IDLUndefined>>(*lexicalGlobalObject, *castedThis->globalObject(), throwScope, [&]() -> decltype(auto) { return impl.makeXRCompatible(WTFMove(promise)); })));
9200}
9201
9202JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_makeXRCompatible, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
9203{
9204 return IDLOperationReturningPromise<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_makeXRCompatibleBody>(*lexicalGlobalObject, *callFrame, "makeXRCompatible");
9205}
9206
9207#endif
9208
9209#if ENABLE(WEBGL)
9210static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_pixelStoreiBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
9211{
9212 auto& vm = JSC::getVM(lexicalGlobalObject);
9213 auto throwScope = DECLARE_THROW_SCOPE(vm);
9214 UNUSED_PARAM(throwScope);
9215 UNUSED_PARAM(callFrame);
9216 auto& impl = castedThis->wrapped();
9217 if (UNLIKELY(callFrame->argumentCount() < 2))
9218 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
9219 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
9220 auto pname = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument0.value());
9221 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9222 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
9223 auto param = convert<IDLLong>(*lexicalGlobalObject, argument1.value());
9224 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9225 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
9226 InspectorCanvasCallTracer::recordAction(impl, "pixelStorei"_s, { InspectorCanvasCallTracer::processArgument(impl, pname), InspectorCanvasCallTracer::processArgument(impl, param) });
9227 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.pixelStorei(WTFMove(pname), WTFMove(param)); })));
9228}
9229
9230JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_pixelStorei, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
9231{
9232 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_pixelStoreiBody>(*lexicalGlobalObject, *callFrame, "pixelStorei");
9233}
9234
9235#endif
9236
9237#if ENABLE(WEBGL)
9238static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_polygonOffsetBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
9239{
9240 auto& vm = JSC::getVM(lexicalGlobalObject);
9241 auto throwScope = DECLARE_THROW_SCOPE(vm);
9242 UNUSED_PARAM(throwScope);
9243 UNUSED_PARAM(callFrame);
9244 auto& impl = castedThis->wrapped();
9245 if (UNLIKELY(callFrame->argumentCount() < 2))
9246 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
9247 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
9248 auto factor = convert<IDLUnrestrictedFloat>(*lexicalGlobalObject, argument0.value());
9249 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9250 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
9251 auto units = convert<IDLUnrestrictedFloat>(*lexicalGlobalObject, argument1.value());
9252 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9253 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
9254 InspectorCanvasCallTracer::recordAction(impl, "polygonOffset"_s, { InspectorCanvasCallTracer::processArgument(impl, factor), InspectorCanvasCallTracer::processArgument(impl, units) });
9255 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.polygonOffset(WTFMove(factor), WTFMove(units)); })));
9256}
9257
9258JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_polygonOffset, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
9259{
9260 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_polygonOffsetBody>(*lexicalGlobalObject, *callFrame, "polygonOffset");
9261}
9262
9263#endif
9264
9265#if ENABLE(WEBGL)
9266static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_readPixelsBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
9267{
9268 auto& vm = JSC::getVM(lexicalGlobalObject);
9269 auto throwScope = DECLARE_THROW_SCOPE(vm);
9270 UNUSED_PARAM(throwScope);
9271 UNUSED_PARAM(callFrame);
9272 auto& impl = castedThis->wrapped();
9273 if (UNLIKELY(callFrame->argumentCount() < 7))
9274 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
9275 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
9276 auto x = convert<IDLLong>(*lexicalGlobalObject, argument0.value());
9277 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9278 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
9279 auto y = convert<IDLLong>(*lexicalGlobalObject, argument1.value());
9280 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9281 EnsureStillAliveScope argument2 = callFrame->uncheckedArgument(2);
9282 auto width = convert<IDLLong>(*lexicalGlobalObject, argument2.value());
9283 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9284 EnsureStillAliveScope argument3 = callFrame->uncheckedArgument(3);
9285 auto height = convert<IDLLong>(*lexicalGlobalObject, argument3.value());
9286 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9287 EnsureStillAliveScope argument4 = callFrame->uncheckedArgument(4);
9288 auto format = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument4.value());
9289 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9290 EnsureStillAliveScope argument5 = callFrame->uncheckedArgument(5);
9291 auto type = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument5.value());
9292 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9293 EnsureStillAliveScope argument6 = callFrame->uncheckedArgument(6);
9294 auto pixels = convert<IDLAllowSharedAdaptor<IDLArrayBufferView>>(*lexicalGlobalObject, argument6.value(), [](JSC::JSGlobalObject& lexicalGlobalObject, JSC::ThrowScope& scope) { throwArgumentTypeError(lexicalGlobalObject, scope, 6, "pixels", "WebGLRenderingContext", "readPixels", "ArrayBufferView"); });
9295 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9296 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
9297 InspectorCanvasCallTracer::recordAction(impl, "readPixels"_s, { InspectorCanvasCallTracer::processArgument(impl, x), InspectorCanvasCallTracer::processArgument(impl, y), InspectorCanvasCallTracer::processArgument(impl, width), InspectorCanvasCallTracer::processArgument(impl, height), InspectorCanvasCallTracer::processArgument(impl, format), InspectorCanvasCallTracer::processArgument(impl, type), InspectorCanvasCallTracer::processArgument(impl, pixels) });
9298 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.readPixels(WTFMove(x), WTFMove(y), WTFMove(width), WTFMove(height), WTFMove(format), WTFMove(type), pixels.releaseNonNull()); })));
9299}
9300
9301JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_readPixels, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
9302{
9303 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_readPixelsBody>(*lexicalGlobalObject, *callFrame, "readPixels");
9304}
9305
9306#endif
9307
9308#if ENABLE(WEBGL)
9309static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_renderbufferStorageBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
9310{
9311 auto& vm = JSC::getVM(lexicalGlobalObject);
9312 auto throwScope = DECLARE_THROW_SCOPE(vm);
9313 UNUSED_PARAM(throwScope);
9314 UNUSED_PARAM(callFrame);
9315 auto& impl = castedThis->wrapped();
9316 if (UNLIKELY(callFrame->argumentCount() < 4))
9317 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
9318 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
9319 auto target = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument0.value());
9320 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9321 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
9322 auto internalformat = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument1.value());
9323 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9324 EnsureStillAliveScope argument2 = callFrame->uncheckedArgument(2);
9325 auto width = convert<IDLLong>(*lexicalGlobalObject, argument2.value());
9326 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9327 EnsureStillAliveScope argument3 = callFrame->uncheckedArgument(3);
9328 auto height = convert<IDLLong>(*lexicalGlobalObject, argument3.value());
9329 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9330 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
9331 InspectorCanvasCallTracer::recordAction(impl, "renderbufferStorage"_s, { InspectorCanvasCallTracer::processArgument(impl, target), InspectorCanvasCallTracer::processArgument(impl, internalformat), InspectorCanvasCallTracer::processArgument(impl, width), InspectorCanvasCallTracer::processArgument(impl, height) });
9332 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.renderbufferStorage(WTFMove(target), WTFMove(internalformat), WTFMove(width), WTFMove(height)); })));
9333}
9334
9335JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_renderbufferStorage, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
9336{
9337 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_renderbufferStorageBody>(*lexicalGlobalObject, *callFrame, "renderbufferStorage");
9338}
9339
9340#endif
9341
9342#if ENABLE(WEBGL)
9343static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_sampleCoverageBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
9344{
9345 auto& vm = JSC::getVM(lexicalGlobalObject);
9346 auto throwScope = DECLARE_THROW_SCOPE(vm);
9347 UNUSED_PARAM(throwScope);
9348 UNUSED_PARAM(callFrame);
9349 auto& impl = castedThis->wrapped();
9350 if (UNLIKELY(callFrame->argumentCount() < 2))
9351 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
9352 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
9353 auto value = convert<IDLUnrestrictedFloat>(*lexicalGlobalObject, argument0.value());
9354 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9355 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
9356 auto invert = convert<IDLBoolean>(*lexicalGlobalObject, argument1.value());
9357 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9358 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
9359 InspectorCanvasCallTracer::recordAction(impl, "sampleCoverage"_s, { InspectorCanvasCallTracer::processArgument(impl, value), InspectorCanvasCallTracer::processArgument(impl, invert) });
9360 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.sampleCoverage(WTFMove(value), WTFMove(invert)); })));
9361}
9362
9363JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_sampleCoverage, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
9364{
9365 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_sampleCoverageBody>(*lexicalGlobalObject, *callFrame, "sampleCoverage");
9366}
9367
9368#endif
9369
9370#if ENABLE(WEBGL)
9371static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_scissorBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
9372{
9373 auto& vm = JSC::getVM(lexicalGlobalObject);
9374 auto throwScope = DECLARE_THROW_SCOPE(vm);
9375 UNUSED_PARAM(throwScope);
9376 UNUSED_PARAM(callFrame);
9377 auto& impl = castedThis->wrapped();
9378 if (UNLIKELY(callFrame->argumentCount() < 4))
9379 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
9380 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
9381 auto x = convert<IDLLong>(*lexicalGlobalObject, argument0.value());
9382 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9383 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
9384 auto y = convert<IDLLong>(*lexicalGlobalObject, argument1.value());
9385 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9386 EnsureStillAliveScope argument2 = callFrame->uncheckedArgument(2);
9387 auto width = convert<IDLLong>(*lexicalGlobalObject, argument2.value());
9388 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9389 EnsureStillAliveScope argument3 = callFrame->uncheckedArgument(3);
9390 auto height = convert<IDLLong>(*lexicalGlobalObject, argument3.value());
9391 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9392 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
9393 InspectorCanvasCallTracer::recordAction(impl, "scissor"_s, { InspectorCanvasCallTracer::processArgument(impl, x), InspectorCanvasCallTracer::processArgument(impl, y), InspectorCanvasCallTracer::processArgument(impl, width), InspectorCanvasCallTracer::processArgument(impl, height) });
9394 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.scissor(WTFMove(x), WTFMove(y), WTFMove(width), WTFMove(height)); })));
9395}
9396
9397JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_scissor, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
9398{
9399 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_scissorBody>(*lexicalGlobalObject, *callFrame, "scissor");
9400}
9401
9402#endif
9403
9404#if ENABLE(WEBGL)
9405static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_shaderSourceBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
9406{
9407 auto& vm = JSC::getVM(lexicalGlobalObject);
9408 auto throwScope = DECLARE_THROW_SCOPE(vm);
9409 UNUSED_PARAM(throwScope);
9410 UNUSED_PARAM(callFrame);
9411 auto& impl = castedThis->wrapped();
9412 if (UNLIKELY(callFrame->argumentCount() < 2))
9413 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
9414 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
9415 auto shader = convert<IDLInterface<WebGLShader>>(*lexicalGlobalObject, argument0.value(), [](JSC::JSGlobalObject& lexicalGlobalObject, JSC::ThrowScope& scope) { throwArgumentTypeError(lexicalGlobalObject, scope, 0, "shader", "WebGLRenderingContext", "shaderSource", "WebGLShader"); });
9416 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9417 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
9418 auto string = convert<IDLDOMString>(*lexicalGlobalObject, argument1.value());
9419 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9420 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
9421 InspectorCanvasCallTracer::recordAction(impl, "shaderSource"_s, { InspectorCanvasCallTracer::processArgument(impl, shader), InspectorCanvasCallTracer::processArgument(impl, string) });
9422 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.shaderSource(*shader, WTFMove(string)); })));
9423}
9424
9425JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_shaderSource, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
9426{
9427 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_shaderSourceBody>(*lexicalGlobalObject, *callFrame, "shaderSource");
9428}
9429
9430#endif
9431
9432#if ENABLE(WEBGL)
9433static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_stencilFuncBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
9434{
9435 auto& vm = JSC::getVM(lexicalGlobalObject);
9436 auto throwScope = DECLARE_THROW_SCOPE(vm);
9437 UNUSED_PARAM(throwScope);
9438 UNUSED_PARAM(callFrame);
9439 auto& impl = castedThis->wrapped();
9440 if (UNLIKELY(callFrame->argumentCount() < 3))
9441 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
9442 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
9443 auto func = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument0.value());
9444 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9445 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
9446 auto ref = convert<IDLLong>(*lexicalGlobalObject, argument1.value());
9447 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9448 EnsureStillAliveScope argument2 = callFrame->uncheckedArgument(2);
9449 auto mask = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument2.value());
9450 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9451 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
9452 InspectorCanvasCallTracer::recordAction(impl, "stencilFunc"_s, { InspectorCanvasCallTracer::processArgument(impl, func), InspectorCanvasCallTracer::processArgument(impl, ref), InspectorCanvasCallTracer::processArgument(impl, mask) });
9453 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.stencilFunc(WTFMove(func), WTFMove(ref), WTFMove(mask)); })));
9454}
9455
9456JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_stencilFunc, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
9457{
9458 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_stencilFuncBody>(*lexicalGlobalObject, *callFrame, "stencilFunc");
9459}
9460
9461#endif
9462
9463#if ENABLE(WEBGL)
9464static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_stencilFuncSeparateBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
9465{
9466 auto& vm = JSC::getVM(lexicalGlobalObject);
9467 auto throwScope = DECLARE_THROW_SCOPE(vm);
9468 UNUSED_PARAM(throwScope);
9469 UNUSED_PARAM(callFrame);
9470 auto& impl = castedThis->wrapped();
9471 if (UNLIKELY(callFrame->argumentCount() < 4))
9472 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
9473 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
9474 auto face = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument0.value());
9475 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9476 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
9477 auto func = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument1.value());
9478 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9479 EnsureStillAliveScope argument2 = callFrame->uncheckedArgument(2);
9480 auto ref = convert<IDLLong>(*lexicalGlobalObject, argument2.value());
9481 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9482 EnsureStillAliveScope argument3 = callFrame->uncheckedArgument(3);
9483 auto mask = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument3.value());
9484 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9485 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
9486 InspectorCanvasCallTracer::recordAction(impl, "stencilFuncSeparate"_s, { InspectorCanvasCallTracer::processArgument(impl, face), InspectorCanvasCallTracer::processArgument(impl, func), InspectorCanvasCallTracer::processArgument(impl, ref), InspectorCanvasCallTracer::processArgument(impl, mask) });
9487 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.stencilFuncSeparate(WTFMove(face), WTFMove(func), WTFMove(ref), WTFMove(mask)); })));
9488}
9489
9490JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_stencilFuncSeparate, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
9491{
9492 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_stencilFuncSeparateBody>(*lexicalGlobalObject, *callFrame, "stencilFuncSeparate");
9493}
9494
9495#endif
9496
9497#if ENABLE(WEBGL)
9498static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_stencilMaskBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
9499{
9500 auto& vm = JSC::getVM(lexicalGlobalObject);
9501 auto throwScope = DECLARE_THROW_SCOPE(vm);
9502 UNUSED_PARAM(throwScope);
9503 UNUSED_PARAM(callFrame);
9504 auto& impl = castedThis->wrapped();
9505 if (UNLIKELY(callFrame->argumentCount() < 1))
9506 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
9507 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
9508 auto mask = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument0.value());
9509 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9510 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
9511 InspectorCanvasCallTracer::recordAction(impl, "stencilMask"_s, { InspectorCanvasCallTracer::processArgument(impl, mask) });
9512 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.stencilMask(WTFMove(mask)); })));
9513}
9514
9515JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_stencilMask, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
9516{
9517 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_stencilMaskBody>(*lexicalGlobalObject, *callFrame, "stencilMask");
9518}
9519
9520#endif
9521
9522#if ENABLE(WEBGL)
9523static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_stencilMaskSeparateBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
9524{
9525 auto& vm = JSC::getVM(lexicalGlobalObject);
9526 auto throwScope = DECLARE_THROW_SCOPE(vm);
9527 UNUSED_PARAM(throwScope);
9528 UNUSED_PARAM(callFrame);
9529 auto& impl = castedThis->wrapped();
9530 if (UNLIKELY(callFrame->argumentCount() < 2))
9531 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
9532 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
9533 auto face = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument0.value());
9534 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9535 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
9536 auto mask = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument1.value());
9537 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9538 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
9539 InspectorCanvasCallTracer::recordAction(impl, "stencilMaskSeparate"_s, { InspectorCanvasCallTracer::processArgument(impl, face), InspectorCanvasCallTracer::processArgument(impl, mask) });
9540 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.stencilMaskSeparate(WTFMove(face), WTFMove(mask)); })));
9541}
9542
9543JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_stencilMaskSeparate, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
9544{
9545 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_stencilMaskSeparateBody>(*lexicalGlobalObject, *callFrame, "stencilMaskSeparate");
9546}
9547
9548#endif
9549
9550#if ENABLE(WEBGL)
9551static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_stencilOpBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
9552{
9553 auto& vm = JSC::getVM(lexicalGlobalObject);
9554 auto throwScope = DECLARE_THROW_SCOPE(vm);
9555 UNUSED_PARAM(throwScope);
9556 UNUSED_PARAM(callFrame);
9557 auto& impl = castedThis->wrapped();
9558 if (UNLIKELY(callFrame->argumentCount() < 3))
9559 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
9560 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
9561 auto fail = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument0.value());
9562 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9563 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
9564 auto zfail = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument1.value());
9565 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9566 EnsureStillAliveScope argument2 = callFrame->uncheckedArgument(2);
9567 auto zpass = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument2.value());
9568 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9569 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
9570 InspectorCanvasCallTracer::recordAction(impl, "stencilOp"_s, { InspectorCanvasCallTracer::processArgument(impl, fail), InspectorCanvasCallTracer::processArgument(impl, zfail), InspectorCanvasCallTracer::processArgument(impl, zpass) });
9571 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.stencilOp(WTFMove(fail), WTFMove(zfail), WTFMove(zpass)); })));
9572}
9573
9574JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_stencilOp, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
9575{
9576 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_stencilOpBody>(*lexicalGlobalObject, *callFrame, "stencilOp");
9577}
9578
9579#endif
9580
9581#if ENABLE(WEBGL)
9582static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_stencilOpSeparateBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
9583{
9584 auto& vm = JSC::getVM(lexicalGlobalObject);
9585 auto throwScope = DECLARE_THROW_SCOPE(vm);
9586 UNUSED_PARAM(throwScope);
9587 UNUSED_PARAM(callFrame);
9588 auto& impl = castedThis->wrapped();
9589 if (UNLIKELY(callFrame->argumentCount() < 4))
9590 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
9591 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
9592 auto face = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument0.value());
9593 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9594 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
9595 auto fail = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument1.value());
9596 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9597 EnsureStillAliveScope argument2 = callFrame->uncheckedArgument(2);
9598 auto zfail = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument2.value());
9599 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9600 EnsureStillAliveScope argument3 = callFrame->uncheckedArgument(3);
9601 auto zpass = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument3.value());
9602 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9603 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
9604 InspectorCanvasCallTracer::recordAction(impl, "stencilOpSeparate"_s, { InspectorCanvasCallTracer::processArgument(impl, face), InspectorCanvasCallTracer::processArgument(impl, fail), InspectorCanvasCallTracer::processArgument(impl, zfail), InspectorCanvasCallTracer::processArgument(impl, zpass) });
9605 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.stencilOpSeparate(WTFMove(face), WTFMove(fail), WTFMove(zfail), WTFMove(zpass)); })));
9606}
9607
9608JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_stencilOpSeparate, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
9609{
9610 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_stencilOpSeparateBody>(*lexicalGlobalObject, *callFrame, "stencilOpSeparate");
9611}
9612
9613#endif
9614
9615#if ENABLE(WEBGL)
9616static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_texParameterfBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
9617{
9618 auto& vm = JSC::getVM(lexicalGlobalObject);
9619 auto throwScope = DECLARE_THROW_SCOPE(vm);
9620 UNUSED_PARAM(throwScope);
9621 UNUSED_PARAM(callFrame);
9622 auto& impl = castedThis->wrapped();
9623 if (UNLIKELY(callFrame->argumentCount() < 3))
9624 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
9625 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
9626 auto target = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument0.value());
9627 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9628 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
9629 auto pname = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument1.value());
9630 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9631 EnsureStillAliveScope argument2 = callFrame->uncheckedArgument(2);
9632 auto param = convert<IDLUnrestrictedFloat>(*lexicalGlobalObject, argument2.value());
9633 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9634 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
9635 InspectorCanvasCallTracer::recordAction(impl, "texParameterf"_s, { InspectorCanvasCallTracer::processArgument(impl, target), InspectorCanvasCallTracer::processArgument(impl, pname), InspectorCanvasCallTracer::processArgument(impl, param) });
9636 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.texParameterf(WTFMove(target), WTFMove(pname), WTFMove(param)); })));
9637}
9638
9639JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_texParameterf, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
9640{
9641 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_texParameterfBody>(*lexicalGlobalObject, *callFrame, "texParameterf");
9642}
9643
9644#endif
9645
9646#if ENABLE(WEBGL)
9647static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_texParameteriBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
9648{
9649 auto& vm = JSC::getVM(lexicalGlobalObject);
9650 auto throwScope = DECLARE_THROW_SCOPE(vm);
9651 UNUSED_PARAM(throwScope);
9652 UNUSED_PARAM(callFrame);
9653 auto& impl = castedThis->wrapped();
9654 if (UNLIKELY(callFrame->argumentCount() < 3))
9655 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
9656 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
9657 auto target = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument0.value());
9658 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9659 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
9660 auto pname = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument1.value());
9661 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9662 EnsureStillAliveScope argument2 = callFrame->uncheckedArgument(2);
9663 auto param = convert<IDLLong>(*lexicalGlobalObject, argument2.value());
9664 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9665 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
9666 InspectorCanvasCallTracer::recordAction(impl, "texParameteri"_s, { InspectorCanvasCallTracer::processArgument(impl, target), InspectorCanvasCallTracer::processArgument(impl, pname), InspectorCanvasCallTracer::processArgument(impl, param) });
9667 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.texParameteri(WTFMove(target), WTFMove(pname), WTFMove(param)); })));
9668}
9669
9670JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_texParameteri, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
9671{
9672 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_texParameteriBody>(*lexicalGlobalObject, *callFrame, "texParameteri");
9673}
9674
9675#endif
9676
9677#if ENABLE(WEBGL)
9678static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_uniform1fBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
9679{
9680 auto& vm = JSC::getVM(lexicalGlobalObject);
9681 auto throwScope = DECLARE_THROW_SCOPE(vm);
9682 UNUSED_PARAM(throwScope);
9683 UNUSED_PARAM(callFrame);
9684 auto& impl = castedThis->wrapped();
9685 if (UNLIKELY(callFrame->argumentCount() < 2))
9686 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
9687 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
9688 auto location = convert<IDLNullable<IDLInterface<WebGLUniformLocation>>>(*lexicalGlobalObject, argument0.value(), [](JSC::JSGlobalObject& lexicalGlobalObject, JSC::ThrowScope& scope) { throwArgumentTypeError(lexicalGlobalObject, scope, 0, "location", "WebGLRenderingContext", "uniform1f", "WebGLUniformLocation"); });
9689 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9690 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
9691 auto x = convert<IDLUnrestrictedFloat>(*lexicalGlobalObject, argument1.value());
9692 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9693 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
9694 InspectorCanvasCallTracer::recordAction(impl, "uniform1f"_s, { InspectorCanvasCallTracer::processArgument(impl, location), InspectorCanvasCallTracer::processArgument(impl, x) });
9695 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.uniform1f(WTFMove(location), WTFMove(x)); })));
9696}
9697
9698JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_uniform1f, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
9699{
9700 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_uniform1fBody>(*lexicalGlobalObject, *callFrame, "uniform1f");
9701}
9702
9703#endif
9704
9705#if ENABLE(WEBGL)
9706static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_uniform2fBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
9707{
9708 auto& vm = JSC::getVM(lexicalGlobalObject);
9709 auto throwScope = DECLARE_THROW_SCOPE(vm);
9710 UNUSED_PARAM(throwScope);
9711 UNUSED_PARAM(callFrame);
9712 auto& impl = castedThis->wrapped();
9713 if (UNLIKELY(callFrame->argumentCount() < 3))
9714 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
9715 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
9716 auto location = convert<IDLNullable<IDLInterface<WebGLUniformLocation>>>(*lexicalGlobalObject, argument0.value(), [](JSC::JSGlobalObject& lexicalGlobalObject, JSC::ThrowScope& scope) { throwArgumentTypeError(lexicalGlobalObject, scope, 0, "location", "WebGLRenderingContext", "uniform2f", "WebGLUniformLocation"); });
9717 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9718 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
9719 auto x = convert<IDLUnrestrictedFloat>(*lexicalGlobalObject, argument1.value());
9720 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9721 EnsureStillAliveScope argument2 = callFrame->uncheckedArgument(2);
9722 auto y = convert<IDLUnrestrictedFloat>(*lexicalGlobalObject, argument2.value());
9723 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9724 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
9725 InspectorCanvasCallTracer::recordAction(impl, "uniform2f"_s, { InspectorCanvasCallTracer::processArgument(impl, location), InspectorCanvasCallTracer::processArgument(impl, x), InspectorCanvasCallTracer::processArgument(impl, y) });
9726 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.uniform2f(WTFMove(location), WTFMove(x), WTFMove(y)); })));
9727}
9728
9729JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_uniform2f, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
9730{
9731 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_uniform2fBody>(*lexicalGlobalObject, *callFrame, "uniform2f");
9732}
9733
9734#endif
9735
9736#if ENABLE(WEBGL)
9737static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_uniform3fBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
9738{
9739 auto& vm = JSC::getVM(lexicalGlobalObject);
9740 auto throwScope = DECLARE_THROW_SCOPE(vm);
9741 UNUSED_PARAM(throwScope);
9742 UNUSED_PARAM(callFrame);
9743 auto& impl = castedThis->wrapped();
9744 if (UNLIKELY(callFrame->argumentCount() < 4))
9745 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
9746 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
9747 auto location = convert<IDLNullable<IDLInterface<WebGLUniformLocation>>>(*lexicalGlobalObject, argument0.value(), [](JSC::JSGlobalObject& lexicalGlobalObject, JSC::ThrowScope& scope) { throwArgumentTypeError(lexicalGlobalObject, scope, 0, "location", "WebGLRenderingContext", "uniform3f", "WebGLUniformLocation"); });
9748 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9749 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
9750 auto x = convert<IDLUnrestrictedFloat>(*lexicalGlobalObject, argument1.value());
9751 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9752 EnsureStillAliveScope argument2 = callFrame->uncheckedArgument(2);
9753 auto y = convert<IDLUnrestrictedFloat>(*lexicalGlobalObject, argument2.value());
9754 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9755 EnsureStillAliveScope argument3 = callFrame->uncheckedArgument(3);
9756 auto z = convert<IDLUnrestrictedFloat>(*lexicalGlobalObject, argument3.value());
9757 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9758 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
9759 InspectorCanvasCallTracer::recordAction(impl, "uniform3f"_s, { InspectorCanvasCallTracer::processArgument(impl, location), InspectorCanvasCallTracer::processArgument(impl, x), InspectorCanvasCallTracer::processArgument(impl, y), InspectorCanvasCallTracer::processArgument(impl, z) });
9760 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.uniform3f(WTFMove(location), WTFMove(x), WTFMove(y), WTFMove(z)); })));
9761}
9762
9763JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_uniform3f, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
9764{
9765 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_uniform3fBody>(*lexicalGlobalObject, *callFrame, "uniform3f");
9766}
9767
9768#endif
9769
9770#if ENABLE(WEBGL)
9771static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_uniform4fBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
9772{
9773 auto& vm = JSC::getVM(lexicalGlobalObject);
9774 auto throwScope = DECLARE_THROW_SCOPE(vm);
9775 UNUSED_PARAM(throwScope);
9776 UNUSED_PARAM(callFrame);
9777 auto& impl = castedThis->wrapped();
9778 if (UNLIKELY(callFrame->argumentCount() < 5))
9779 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
9780 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
9781 auto location = convert<IDLNullable<IDLInterface<WebGLUniformLocation>>>(*lexicalGlobalObject, argument0.value(), [](JSC::JSGlobalObject& lexicalGlobalObject, JSC::ThrowScope& scope) { throwArgumentTypeError(lexicalGlobalObject, scope, 0, "location", "WebGLRenderingContext", "uniform4f", "WebGLUniformLocation"); });
9782 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9783 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
9784 auto x = convert<IDLUnrestrictedFloat>(*lexicalGlobalObject, argument1.value());
9785 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9786 EnsureStillAliveScope argument2 = callFrame->uncheckedArgument(2);
9787 auto y = convert<IDLUnrestrictedFloat>(*lexicalGlobalObject, argument2.value());
9788 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9789 EnsureStillAliveScope argument3 = callFrame->uncheckedArgument(3);
9790 auto z = convert<IDLUnrestrictedFloat>(*lexicalGlobalObject, argument3.value());
9791 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9792 EnsureStillAliveScope argument4 = callFrame->uncheckedArgument(4);
9793 auto w = convert<IDLUnrestrictedFloat>(*lexicalGlobalObject, argument4.value());
9794 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9795 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
9796 InspectorCanvasCallTracer::recordAction(impl, "uniform4f"_s, { InspectorCanvasCallTracer::processArgument(impl, location), InspectorCanvasCallTracer::processArgument(impl, x), InspectorCanvasCallTracer::processArgument(impl, y), InspectorCanvasCallTracer::processArgument(impl, z), InspectorCanvasCallTracer::processArgument(impl, w) });
9797 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.uniform4f(WTFMove(location), WTFMove(x), WTFMove(y), WTFMove(z), WTFMove(w)); })));
9798}
9799
9800JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_uniform4f, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
9801{
9802 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_uniform4fBody>(*lexicalGlobalObject, *callFrame, "uniform4f");
9803}
9804
9805#endif
9806
9807#if ENABLE(WEBGL)
9808static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_uniform1iBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
9809{
9810 auto& vm = JSC::getVM(lexicalGlobalObject);
9811 auto throwScope = DECLARE_THROW_SCOPE(vm);
9812 UNUSED_PARAM(throwScope);
9813 UNUSED_PARAM(callFrame);
9814 auto& impl = castedThis->wrapped();
9815 if (UNLIKELY(callFrame->argumentCount() < 2))
9816 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
9817 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
9818 auto location = convert<IDLNullable<IDLInterface<WebGLUniformLocation>>>(*lexicalGlobalObject, argument0.value(), [](JSC::JSGlobalObject& lexicalGlobalObject, JSC::ThrowScope& scope) { throwArgumentTypeError(lexicalGlobalObject, scope, 0, "location", "WebGLRenderingContext", "uniform1i", "WebGLUniformLocation"); });
9819 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9820 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
9821 auto x = convert<IDLLong>(*lexicalGlobalObject, argument1.value());
9822 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9823 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
9824 InspectorCanvasCallTracer::recordAction(impl, "uniform1i"_s, { InspectorCanvasCallTracer::processArgument(impl, location), InspectorCanvasCallTracer::processArgument(impl, x) });
9825 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.uniform1i(WTFMove(location), WTFMove(x)); })));
9826}
9827
9828JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_uniform1i, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
9829{
9830 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_uniform1iBody>(*lexicalGlobalObject, *callFrame, "uniform1i");
9831}
9832
9833#endif
9834
9835#if ENABLE(WEBGL)
9836static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_uniform2iBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
9837{
9838 auto& vm = JSC::getVM(lexicalGlobalObject);
9839 auto throwScope = DECLARE_THROW_SCOPE(vm);
9840 UNUSED_PARAM(throwScope);
9841 UNUSED_PARAM(callFrame);
9842 auto& impl = castedThis->wrapped();
9843 if (UNLIKELY(callFrame->argumentCount() < 3))
9844 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
9845 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
9846 auto location = convert<IDLNullable<IDLInterface<WebGLUniformLocation>>>(*lexicalGlobalObject, argument0.value(), [](JSC::JSGlobalObject& lexicalGlobalObject, JSC::ThrowScope& scope) { throwArgumentTypeError(lexicalGlobalObject, scope, 0, "location", "WebGLRenderingContext", "uniform2i", "WebGLUniformLocation"); });
9847 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9848 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
9849 auto x = convert<IDLLong>(*lexicalGlobalObject, argument1.value());
9850 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9851 EnsureStillAliveScope argument2 = callFrame->uncheckedArgument(2);
9852 auto y = convert<IDLLong>(*lexicalGlobalObject, argument2.value());
9853 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9854 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
9855 InspectorCanvasCallTracer::recordAction(impl, "uniform2i"_s, { InspectorCanvasCallTracer::processArgument(impl, location), InspectorCanvasCallTracer::processArgument(impl, x), InspectorCanvasCallTracer::processArgument(impl, y) });
9856 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.uniform2i(WTFMove(location), WTFMove(x), WTFMove(y)); })));
9857}
9858
9859JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_uniform2i, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
9860{
9861 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_uniform2iBody>(*lexicalGlobalObject, *callFrame, "uniform2i");
9862}
9863
9864#endif
9865
9866#if ENABLE(WEBGL)
9867static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_uniform3iBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
9868{
9869 auto& vm = JSC::getVM(lexicalGlobalObject);
9870 auto throwScope = DECLARE_THROW_SCOPE(vm);
9871 UNUSED_PARAM(throwScope);
9872 UNUSED_PARAM(callFrame);
9873 auto& impl = castedThis->wrapped();
9874 if (UNLIKELY(callFrame->argumentCount() < 4))
9875 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
9876 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
9877 auto location = convert<IDLNullable<IDLInterface<WebGLUniformLocation>>>(*lexicalGlobalObject, argument0.value(), [](JSC::JSGlobalObject& lexicalGlobalObject, JSC::ThrowScope& scope) { throwArgumentTypeError(lexicalGlobalObject, scope, 0, "location", "WebGLRenderingContext", "uniform3i", "WebGLUniformLocation"); });
9878 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9879 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
9880 auto x = convert<IDLLong>(*lexicalGlobalObject, argument1.value());
9881 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9882 EnsureStillAliveScope argument2 = callFrame->uncheckedArgument(2);
9883 auto y = convert<IDLLong>(*lexicalGlobalObject, argument2.value());
9884 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9885 EnsureStillAliveScope argument3 = callFrame->uncheckedArgument(3);
9886 auto z = convert<IDLLong>(*lexicalGlobalObject, argument3.value());
9887 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9888 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
9889 InspectorCanvasCallTracer::recordAction(impl, "uniform3i"_s, { InspectorCanvasCallTracer::processArgument(impl, location), InspectorCanvasCallTracer::processArgument(impl, x), InspectorCanvasCallTracer::processArgument(impl, y), InspectorCanvasCallTracer::processArgument(impl, z) });
9890 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.uniform3i(WTFMove(location), WTFMove(x), WTFMove(y), WTFMove(z)); })));
9891}
9892
9893JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_uniform3i, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
9894{
9895 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_uniform3iBody>(*lexicalGlobalObject, *callFrame, "uniform3i");
9896}
9897
9898#endif
9899
9900#if ENABLE(WEBGL)
9901static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_uniform4iBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
9902{
9903 auto& vm = JSC::getVM(lexicalGlobalObject);
9904 auto throwScope = DECLARE_THROW_SCOPE(vm);
9905 UNUSED_PARAM(throwScope);
9906 UNUSED_PARAM(callFrame);
9907 auto& impl = castedThis->wrapped();
9908 if (UNLIKELY(callFrame->argumentCount() < 5))
9909 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
9910 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
9911 auto location = convert<IDLNullable<IDLInterface<WebGLUniformLocation>>>(*lexicalGlobalObject, argument0.value(), [](JSC::JSGlobalObject& lexicalGlobalObject, JSC::ThrowScope& scope) { throwArgumentTypeError(lexicalGlobalObject, scope, 0, "location", "WebGLRenderingContext", "uniform4i", "WebGLUniformLocation"); });
9912 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9913 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
9914 auto x = convert<IDLLong>(*lexicalGlobalObject, argument1.value());
9915 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9916 EnsureStillAliveScope argument2 = callFrame->uncheckedArgument(2);
9917 auto y = convert<IDLLong>(*lexicalGlobalObject, argument2.value());
9918 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9919 EnsureStillAliveScope argument3 = callFrame->uncheckedArgument(3);
9920 auto z = convert<IDLLong>(*lexicalGlobalObject, argument3.value());
9921 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9922 EnsureStillAliveScope argument4 = callFrame->uncheckedArgument(4);
9923 auto w = convert<IDLLong>(*lexicalGlobalObject, argument4.value());
9924 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9925 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
9926 InspectorCanvasCallTracer::recordAction(impl, "uniform4i"_s, { InspectorCanvasCallTracer::processArgument(impl, location), InspectorCanvasCallTracer::processArgument(impl, x), InspectorCanvasCallTracer::processArgument(impl, y), InspectorCanvasCallTracer::processArgument(impl, z), InspectorCanvasCallTracer::processArgument(impl, w) });
9927 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.uniform4i(WTFMove(location), WTFMove(x), WTFMove(y), WTFMove(z), WTFMove(w)); })));
9928}
9929
9930JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_uniform4i, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
9931{
9932 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_uniform4iBody>(*lexicalGlobalObject, *callFrame, "uniform4i");
9933}
9934
9935#endif
9936
9937#if ENABLE(WEBGL)
9938static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_uniform1fvBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
9939{
9940 auto& vm = JSC::getVM(lexicalGlobalObject);
9941 auto throwScope = DECLARE_THROW_SCOPE(vm);
9942 UNUSED_PARAM(throwScope);
9943 UNUSED_PARAM(callFrame);
9944 auto& impl = castedThis->wrapped();
9945 if (UNLIKELY(callFrame->argumentCount() < 2))
9946 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
9947 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
9948 auto location = convert<IDLNullable<IDLInterface<WebGLUniformLocation>>>(*lexicalGlobalObject, argument0.value(), [](JSC::JSGlobalObject& lexicalGlobalObject, JSC::ThrowScope& scope) { throwArgumentTypeError(lexicalGlobalObject, scope, 0, "location", "WebGLRenderingContext", "uniform1fv", "WebGLUniformLocation"); });
9949 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9950 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
9951 auto v = convert<IDLUnion<IDLAllowSharedAdaptor<IDLFloat32Array>, IDLSequence<IDLUnrestrictedFloat>>>(*lexicalGlobalObject, argument1.value());
9952 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9953 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
9954 InspectorCanvasCallTracer::recordAction(impl, "uniform1fv"_s, { InspectorCanvasCallTracer::processArgument(impl, location), InspectorCanvasCallTracer::processArgument(impl, v) });
9955 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.uniform1fv(WTFMove(location), WTFMove(v)); })));
9956}
9957
9958JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_uniform1fv, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
9959{
9960 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_uniform1fvBody>(*lexicalGlobalObject, *callFrame, "uniform1fv");
9961}
9962
9963#endif
9964
9965#if ENABLE(WEBGL)
9966static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_uniform2fvBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
9967{
9968 auto& vm = JSC::getVM(lexicalGlobalObject);
9969 auto throwScope = DECLARE_THROW_SCOPE(vm);
9970 UNUSED_PARAM(throwScope);
9971 UNUSED_PARAM(callFrame);
9972 auto& impl = castedThis->wrapped();
9973 if (UNLIKELY(callFrame->argumentCount() < 2))
9974 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
9975 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
9976 auto location = convert<IDLNullable<IDLInterface<WebGLUniformLocation>>>(*lexicalGlobalObject, argument0.value(), [](JSC::JSGlobalObject& lexicalGlobalObject, JSC::ThrowScope& scope) { throwArgumentTypeError(lexicalGlobalObject, scope, 0, "location", "WebGLRenderingContext", "uniform2fv", "WebGLUniformLocation"); });
9977 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9978 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
9979 auto v = convert<IDLUnion<IDLAllowSharedAdaptor<IDLFloat32Array>, IDLSequence<IDLUnrestrictedFloat>>>(*lexicalGlobalObject, argument1.value());
9980 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
9981 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
9982 InspectorCanvasCallTracer::recordAction(impl, "uniform2fv"_s, { InspectorCanvasCallTracer::processArgument(impl, location), InspectorCanvasCallTracer::processArgument(impl, v) });
9983 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.uniform2fv(WTFMove(location), WTFMove(v)); })));
9984}
9985
9986JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_uniform2fv, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
9987{
9988 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_uniform2fvBody>(*lexicalGlobalObject, *callFrame, "uniform2fv");
9989}
9990
9991#endif
9992
9993#if ENABLE(WEBGL)
9994static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_uniform3fvBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
9995{
9996 auto& vm = JSC::getVM(lexicalGlobalObject);
9997 auto throwScope = DECLARE_THROW_SCOPE(vm);
9998 UNUSED_PARAM(throwScope);
9999 UNUSED_PARAM(callFrame);
10000 auto& impl = castedThis->wrapped();
10001 if (UNLIKELY(callFrame->argumentCount() < 2))
10002 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
10003 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
10004 auto location = convert<IDLNullable<IDLInterface<WebGLUniformLocation>>>(*lexicalGlobalObject, argument0.value(), [](JSC::JSGlobalObject& lexicalGlobalObject, JSC::ThrowScope& scope) { throwArgumentTypeError(lexicalGlobalObject, scope, 0, "location", "WebGLRenderingContext", "uniform3fv", "WebGLUniformLocation"); });
10005 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
10006 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
10007 auto v = convert<IDLUnion<IDLAllowSharedAdaptor<IDLFloat32Array>, IDLSequence<IDLUnrestrictedFloat>>>(*lexicalGlobalObject, argument1.value());
10008 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
10009 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
10010 InspectorCanvasCallTracer::recordAction(impl, "uniform3fv"_s, { InspectorCanvasCallTracer::processArgument(impl, location), InspectorCanvasCallTracer::processArgument(impl, v) });
10011 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.uniform3fv(WTFMove(location), WTFMove(v)); })));
10012}
10013
10014JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_uniform3fv, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
10015{
10016 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_uniform3fvBody>(*lexicalGlobalObject, *callFrame, "uniform3fv");
10017}
10018
10019#endif
10020
10021#if ENABLE(WEBGL)
10022static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_uniform4fvBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
10023{
10024 auto& vm = JSC::getVM(lexicalGlobalObject);
10025 auto throwScope = DECLARE_THROW_SCOPE(vm);
10026 UNUSED_PARAM(throwScope);
10027 UNUSED_PARAM(callFrame);
10028 auto& impl = castedThis->wrapped();
10029 if (UNLIKELY(callFrame->argumentCount() < 2))
10030 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
10031 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
10032 auto location = convert<IDLNullable<IDLInterface<WebGLUniformLocation>>>(*lexicalGlobalObject, argument0.value(), [](JSC::JSGlobalObject& lexicalGlobalObject, JSC::ThrowScope& scope) { throwArgumentTypeError(lexicalGlobalObject, scope, 0, "location", "WebGLRenderingContext", "uniform4fv", "WebGLUniformLocation"); });
10033 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
10034 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
10035 auto v = convert<IDLUnion<IDLAllowSharedAdaptor<IDLFloat32Array>, IDLSequence<IDLUnrestrictedFloat>>>(*lexicalGlobalObject, argument1.value());
10036 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
10037 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
10038 InspectorCanvasCallTracer::recordAction(impl, "uniform4fv"_s, { InspectorCanvasCallTracer::processArgument(impl, location), InspectorCanvasCallTracer::processArgument(impl, v) });
10039 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.uniform4fv(WTFMove(location), WTFMove(v)); })));
10040}
10041
10042JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_uniform4fv, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
10043{
10044 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_uniform4fvBody>(*lexicalGlobalObject, *callFrame, "uniform4fv");
10045}
10046
10047#endif
10048
10049#if ENABLE(WEBGL)
10050static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_uniform1ivBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
10051{
10052 auto& vm = JSC::getVM(lexicalGlobalObject);
10053 auto throwScope = DECLARE_THROW_SCOPE(vm);
10054 UNUSED_PARAM(throwScope);
10055 UNUSED_PARAM(callFrame);
10056 auto& impl = castedThis->wrapped();
10057 if (UNLIKELY(callFrame->argumentCount() < 2))
10058 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
10059 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
10060 auto location = convert<IDLNullable<IDLInterface<WebGLUniformLocation>>>(*lexicalGlobalObject, argument0.value(), [](JSC::JSGlobalObject& lexicalGlobalObject, JSC::ThrowScope& scope) { throwArgumentTypeError(lexicalGlobalObject, scope, 0, "location", "WebGLRenderingContext", "uniform1iv", "WebGLUniformLocation"); });
10061 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
10062 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
10063 auto v = convert<IDLUnion<IDLAllowSharedAdaptor<IDLInt32Array>, IDLSequence<IDLLong>>>(*lexicalGlobalObject, argument1.value());
10064 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
10065 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
10066 InspectorCanvasCallTracer::recordAction(impl, "uniform1iv"_s, { InspectorCanvasCallTracer::processArgument(impl, location), InspectorCanvasCallTracer::processArgument(impl, v) });
10067 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.uniform1iv(WTFMove(location), WTFMove(v)); })));
10068}
10069
10070JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_uniform1iv, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
10071{
10072 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_uniform1ivBody>(*lexicalGlobalObject, *callFrame, "uniform1iv");
10073}
10074
10075#endif
10076
10077#if ENABLE(WEBGL)
10078static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_uniform2ivBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
10079{
10080 auto& vm = JSC::getVM(lexicalGlobalObject);
10081 auto throwScope = DECLARE_THROW_SCOPE(vm);
10082 UNUSED_PARAM(throwScope);
10083 UNUSED_PARAM(callFrame);
10084 auto& impl = castedThis->wrapped();
10085 if (UNLIKELY(callFrame->argumentCount() < 2))
10086 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
10087 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
10088 auto location = convert<IDLNullable<IDLInterface<WebGLUniformLocation>>>(*lexicalGlobalObject, argument0.value(), [](JSC::JSGlobalObject& lexicalGlobalObject, JSC::ThrowScope& scope) { throwArgumentTypeError(lexicalGlobalObject, scope, 0, "location", "WebGLRenderingContext", "uniform2iv", "WebGLUniformLocation"); });
10089 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
10090 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
10091 auto v = convert<IDLUnion<IDLAllowSharedAdaptor<IDLInt32Array>, IDLSequence<IDLLong>>>(*lexicalGlobalObject, argument1.value());
10092 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
10093 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
10094 InspectorCanvasCallTracer::recordAction(impl, "uniform2iv"_s, { InspectorCanvasCallTracer::processArgument(impl, location), InspectorCanvasCallTracer::processArgument(impl, v) });
10095 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.uniform2iv(WTFMove(location), WTFMove(v)); })));
10096}
10097
10098JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_uniform2iv, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
10099{
10100 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_uniform2ivBody>(*lexicalGlobalObject, *callFrame, "uniform2iv");
10101}
10102
10103#endif
10104
10105#if ENABLE(WEBGL)
10106static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_uniform3ivBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
10107{
10108 auto& vm = JSC::getVM(lexicalGlobalObject);
10109 auto throwScope = DECLARE_THROW_SCOPE(vm);
10110 UNUSED_PARAM(throwScope);
10111 UNUSED_PARAM(callFrame);
10112 auto& impl = castedThis->wrapped();
10113 if (UNLIKELY(callFrame->argumentCount() < 2))
10114 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
10115 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
10116 auto location = convert<IDLNullable<IDLInterface<WebGLUniformLocation>>>(*lexicalGlobalObject, argument0.value(), [](JSC::JSGlobalObject& lexicalGlobalObject, JSC::ThrowScope& scope) { throwArgumentTypeError(lexicalGlobalObject, scope, 0, "location", "WebGLRenderingContext", "uniform3iv", "WebGLUniformLocation"); });
10117 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
10118 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
10119 auto v = convert<IDLUnion<IDLAllowSharedAdaptor<IDLInt32Array>, IDLSequence<IDLLong>>>(*lexicalGlobalObject, argument1.value());
10120 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
10121 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
10122 InspectorCanvasCallTracer::recordAction(impl, "uniform3iv"_s, { InspectorCanvasCallTracer::processArgument(impl, location), InspectorCanvasCallTracer::processArgument(impl, v) });
10123 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.uniform3iv(WTFMove(location), WTFMove(v)); })));
10124}
10125
10126JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_uniform3iv, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
10127{
10128 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_uniform3ivBody>(*lexicalGlobalObject, *callFrame, "uniform3iv");
10129}
10130
10131#endif
10132
10133#if ENABLE(WEBGL)
10134static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_uniform4ivBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
10135{
10136 auto& vm = JSC::getVM(lexicalGlobalObject);
10137 auto throwScope = DECLARE_THROW_SCOPE(vm);
10138 UNUSED_PARAM(throwScope);
10139 UNUSED_PARAM(callFrame);
10140 auto& impl = castedThis->wrapped();
10141 if (UNLIKELY(callFrame->argumentCount() < 2))
10142 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
10143 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
10144 auto location = convert<IDLNullable<IDLInterface<WebGLUniformLocation>>>(*lexicalGlobalObject, argument0.value(), [](JSC::JSGlobalObject& lexicalGlobalObject, JSC::ThrowScope& scope) { throwArgumentTypeError(lexicalGlobalObject, scope, 0, "location", "WebGLRenderingContext", "uniform4iv", "WebGLUniformLocation"); });
10145 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
10146 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
10147 auto v = convert<IDLUnion<IDLAllowSharedAdaptor<IDLInt32Array>, IDLSequence<IDLLong>>>(*lexicalGlobalObject, argument1.value());
10148 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
10149 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
10150 InspectorCanvasCallTracer::recordAction(impl, "uniform4iv"_s, { InspectorCanvasCallTracer::processArgument(impl, location), InspectorCanvasCallTracer::processArgument(impl, v) });
10151 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.uniform4iv(WTFMove(location), WTFMove(v)); })));
10152}
10153
10154JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_uniform4iv, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
10155{
10156 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_uniform4ivBody>(*lexicalGlobalObject, *callFrame, "uniform4iv");
10157}
10158
10159#endif
10160
10161#if ENABLE(WEBGL)
10162static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_uniformMatrix2fvBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
10163{
10164 auto& vm = JSC::getVM(lexicalGlobalObject);
10165 auto throwScope = DECLARE_THROW_SCOPE(vm);
10166 UNUSED_PARAM(throwScope);
10167 UNUSED_PARAM(callFrame);
10168 auto& impl = castedThis->wrapped();
10169 if (UNLIKELY(callFrame->argumentCount() < 3))
10170 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
10171 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
10172 auto location = convert<IDLNullable<IDLInterface<WebGLUniformLocation>>>(*lexicalGlobalObject, argument0.value(), [](JSC::JSGlobalObject& lexicalGlobalObject, JSC::ThrowScope& scope) { throwArgumentTypeError(lexicalGlobalObject, scope, 0, "location", "WebGLRenderingContext", "uniformMatrix2fv", "WebGLUniformLocation"); });
10173 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
10174 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
10175 auto transpose = convert<IDLBoolean>(*lexicalGlobalObject, argument1.value());
10176 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
10177 EnsureStillAliveScope argument2 = callFrame->uncheckedArgument(2);
10178 auto array = convert<IDLUnion<IDLAllowSharedAdaptor<IDLFloat32Array>, IDLSequence<IDLUnrestrictedFloat>>>(*lexicalGlobalObject, argument2.value());
10179 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
10180 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
10181 InspectorCanvasCallTracer::recordAction(impl, "uniformMatrix2fv"_s, { InspectorCanvasCallTracer::processArgument(impl, location), InspectorCanvasCallTracer::processArgument(impl, transpose), InspectorCanvasCallTracer::processArgument(impl, array) });
10182 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.uniformMatrix2fv(WTFMove(location), WTFMove(transpose), WTFMove(array)); })));
10183}
10184
10185JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_uniformMatrix2fv, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
10186{
10187 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_uniformMatrix2fvBody>(*lexicalGlobalObject, *callFrame, "uniformMatrix2fv");
10188}
10189
10190#endif
10191
10192#if ENABLE(WEBGL)
10193static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_uniformMatrix3fvBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
10194{
10195 auto& vm = JSC::getVM(lexicalGlobalObject);
10196 auto throwScope = DECLARE_THROW_SCOPE(vm);
10197 UNUSED_PARAM(throwScope);
10198 UNUSED_PARAM(callFrame);
10199 auto& impl = castedThis->wrapped();
10200 if (UNLIKELY(callFrame->argumentCount() < 3))
10201 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
10202 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
10203 auto location = convert<IDLNullable<IDLInterface<WebGLUniformLocation>>>(*lexicalGlobalObject, argument0.value(), [](JSC::JSGlobalObject& lexicalGlobalObject, JSC::ThrowScope& scope) { throwArgumentTypeError(lexicalGlobalObject, scope, 0, "location", "WebGLRenderingContext", "uniformMatrix3fv", "WebGLUniformLocation"); });
10204 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
10205 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
10206 auto transpose = convert<IDLBoolean>(*lexicalGlobalObject, argument1.value());
10207 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
10208 EnsureStillAliveScope argument2 = callFrame->uncheckedArgument(2);
10209 auto array = convert<IDLUnion<IDLAllowSharedAdaptor<IDLFloat32Array>, IDLSequence<IDLUnrestrictedFloat>>>(*lexicalGlobalObject, argument2.value());
10210 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
10211 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
10212 InspectorCanvasCallTracer::recordAction(impl, "uniformMatrix3fv"_s, { InspectorCanvasCallTracer::processArgument(impl, location), InspectorCanvasCallTracer::processArgument(impl, transpose), InspectorCanvasCallTracer::processArgument(impl, array) });
10213 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.uniformMatrix3fv(WTFMove(location), WTFMove(transpose), WTFMove(array)); })));
10214}
10215
10216JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_uniformMatrix3fv, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
10217{
10218 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_uniformMatrix3fvBody>(*lexicalGlobalObject, *callFrame, "uniformMatrix3fv");
10219}
10220
10221#endif
10222
10223#if ENABLE(WEBGL)
10224static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_uniformMatrix4fvBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
10225{
10226 auto& vm = JSC::getVM(lexicalGlobalObject);
10227 auto throwScope = DECLARE_THROW_SCOPE(vm);
10228 UNUSED_PARAM(throwScope);
10229 UNUSED_PARAM(callFrame);
10230 auto& impl = castedThis->wrapped();
10231 if (UNLIKELY(callFrame->argumentCount() < 3))
10232 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
10233 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
10234 auto location = convert<IDLNullable<IDLInterface<WebGLUniformLocation>>>(*lexicalGlobalObject, argument0.value(), [](JSC::JSGlobalObject& lexicalGlobalObject, JSC::ThrowScope& scope) { throwArgumentTypeError(lexicalGlobalObject, scope, 0, "location", "WebGLRenderingContext", "uniformMatrix4fv", "WebGLUniformLocation"); });
10235 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
10236 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
10237 auto transpose = convert<IDLBoolean>(*lexicalGlobalObject, argument1.value());
10238 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
10239 EnsureStillAliveScope argument2 = callFrame->uncheckedArgument(2);
10240 auto array = convert<IDLUnion<IDLAllowSharedAdaptor<IDLFloat32Array>, IDLSequence<IDLUnrestrictedFloat>>>(*lexicalGlobalObject, argument2.value());
10241 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
10242 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
10243 InspectorCanvasCallTracer::recordAction(impl, "uniformMatrix4fv"_s, { InspectorCanvasCallTracer::processArgument(impl, location), InspectorCanvasCallTracer::processArgument(impl, transpose), InspectorCanvasCallTracer::processArgument(impl, array) });
10244 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.uniformMatrix4fv(WTFMove(location), WTFMove(transpose), WTFMove(array)); })));
10245}
10246
10247JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_uniformMatrix4fv, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
10248{
10249 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_uniformMatrix4fvBody>(*lexicalGlobalObject, *callFrame, "uniformMatrix4fv");
10250}
10251
10252#endif
10253
10254#if ENABLE(WEBGL)
10255static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_useProgramBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
10256{
10257 auto& vm = JSC::getVM(lexicalGlobalObject);
10258 auto throwScope = DECLARE_THROW_SCOPE(vm);
10259 UNUSED_PARAM(throwScope);
10260 UNUSED_PARAM(callFrame);
10261 auto& impl = castedThis->wrapped();
10262 if (UNLIKELY(callFrame->argumentCount() < 1))
10263 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
10264 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
10265 auto program = convert<IDLNullable<IDLInterface<WebGLProgram>>>(*lexicalGlobalObject, argument0.value(), [](JSC::JSGlobalObject& lexicalGlobalObject, JSC::ThrowScope& scope) { throwArgumentTypeError(lexicalGlobalObject, scope, 0, "program", "WebGLRenderingContext", "useProgram", "WebGLProgram"); });
10266 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
10267 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
10268 InspectorCanvasCallTracer::recordAction(impl, "useProgram"_s, { InspectorCanvasCallTracer::processArgument(impl, program) });
10269 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.useProgram(WTFMove(program)); })));
10270}
10271
10272JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_useProgram, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
10273{
10274 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_useProgramBody>(*lexicalGlobalObject, *callFrame, "useProgram");
10275}
10276
10277#endif
10278
10279#if ENABLE(WEBGL)
10280static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_validateProgramBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
10281{
10282 auto& vm = JSC::getVM(lexicalGlobalObject);
10283 auto throwScope = DECLARE_THROW_SCOPE(vm);
10284 UNUSED_PARAM(throwScope);
10285 UNUSED_PARAM(callFrame);
10286 auto& impl = castedThis->wrapped();
10287 if (UNLIKELY(callFrame->argumentCount() < 1))
10288 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
10289 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
10290 auto program = convert<IDLInterface<WebGLProgram>>(*lexicalGlobalObject, argument0.value(), [](JSC::JSGlobalObject& lexicalGlobalObject, JSC::ThrowScope& scope) { throwArgumentTypeError(lexicalGlobalObject, scope, 0, "program", "WebGLRenderingContext", "validateProgram", "WebGLProgram"); });
10291 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
10292 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
10293 InspectorCanvasCallTracer::recordAction(impl, "validateProgram"_s, { InspectorCanvasCallTracer::processArgument(impl, program) });
10294 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.validateProgram(*program); })));
10295}
10296
10297JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_validateProgram, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
10298{
10299 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_validateProgramBody>(*lexicalGlobalObject, *callFrame, "validateProgram");
10300}
10301
10302#endif
10303
10304#if ENABLE(WEBGL)
10305static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_vertexAttrib1fBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
10306{
10307 auto& vm = JSC::getVM(lexicalGlobalObject);
10308 auto throwScope = DECLARE_THROW_SCOPE(vm);
10309 UNUSED_PARAM(throwScope);
10310 UNUSED_PARAM(callFrame);
10311 auto& impl = castedThis->wrapped();
10312 if (UNLIKELY(callFrame->argumentCount() < 2))
10313 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
10314 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
10315 auto index = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument0.value());
10316 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
10317 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
10318 auto x = convert<IDLUnrestrictedFloat>(*lexicalGlobalObject, argument1.value());
10319 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
10320 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
10321 InspectorCanvasCallTracer::recordAction(impl, "vertexAttrib1f"_s, { InspectorCanvasCallTracer::processArgument(impl, index), InspectorCanvasCallTracer::processArgument(impl, x) });
10322 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.vertexAttrib1f(WTFMove(index), WTFMove(x)); })));
10323}
10324
10325JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_vertexAttrib1f, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
10326{
10327 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_vertexAttrib1fBody>(*lexicalGlobalObject, *callFrame, "vertexAttrib1f");
10328}
10329
10330#endif
10331
10332#if ENABLE(WEBGL)
10333static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_vertexAttrib2fBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
10334{
10335 auto& vm = JSC::getVM(lexicalGlobalObject);
10336 auto throwScope = DECLARE_THROW_SCOPE(vm);
10337 UNUSED_PARAM(throwScope);
10338 UNUSED_PARAM(callFrame);
10339 auto& impl = castedThis->wrapped();
10340 if (UNLIKELY(callFrame->argumentCount() < 3))
10341 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
10342 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
10343 auto index = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument0.value());
10344 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
10345 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
10346 auto x = convert<IDLUnrestrictedFloat>(*lexicalGlobalObject, argument1.value());
10347 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
10348 EnsureStillAliveScope argument2 = callFrame->uncheckedArgument(2);
10349 auto y = convert<IDLUnrestrictedFloat>(*lexicalGlobalObject, argument2.value());
10350 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
10351 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
10352 InspectorCanvasCallTracer::recordAction(impl, "vertexAttrib2f"_s, { InspectorCanvasCallTracer::processArgument(impl, index), InspectorCanvasCallTracer::processArgument(impl, x), InspectorCanvasCallTracer::processArgument(impl, y) });
10353 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.vertexAttrib2f(WTFMove(index), WTFMove(x), WTFMove(y)); })));
10354}
10355
10356JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_vertexAttrib2f, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
10357{
10358 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_vertexAttrib2fBody>(*lexicalGlobalObject, *callFrame, "vertexAttrib2f");
10359}
10360
10361#endif
10362
10363#if ENABLE(WEBGL)
10364static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_vertexAttrib3fBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
10365{
10366 auto& vm = JSC::getVM(lexicalGlobalObject);
10367 auto throwScope = DECLARE_THROW_SCOPE(vm);
10368 UNUSED_PARAM(throwScope);
10369 UNUSED_PARAM(callFrame);
10370 auto& impl = castedThis->wrapped();
10371 if (UNLIKELY(callFrame->argumentCount() < 4))
10372 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
10373 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
10374 auto index = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument0.value());
10375 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
10376 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
10377 auto x = convert<IDLUnrestrictedFloat>(*lexicalGlobalObject, argument1.value());
10378 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
10379 EnsureStillAliveScope argument2 = callFrame->uncheckedArgument(2);
10380 auto y = convert<IDLUnrestrictedFloat>(*lexicalGlobalObject, argument2.value());
10381 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
10382 EnsureStillAliveScope argument3 = callFrame->uncheckedArgument(3);
10383 auto z = convert<IDLUnrestrictedFloat>(*lexicalGlobalObject, argument3.value());
10384 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
10385 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
10386 InspectorCanvasCallTracer::recordAction(impl, "vertexAttrib3f"_s, { InspectorCanvasCallTracer::processArgument(impl, index), InspectorCanvasCallTracer::processArgument(impl, x), InspectorCanvasCallTracer::processArgument(impl, y), InspectorCanvasCallTracer::processArgument(impl, z) });
10387 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.vertexAttrib3f(WTFMove(index), WTFMove(x), WTFMove(y), WTFMove(z)); })));
10388}
10389
10390JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_vertexAttrib3f, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
10391{
10392 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_vertexAttrib3fBody>(*lexicalGlobalObject, *callFrame, "vertexAttrib3f");
10393}
10394
10395#endif
10396
10397#if ENABLE(WEBGL)
10398static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_vertexAttrib4fBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
10399{
10400 auto& vm = JSC::getVM(lexicalGlobalObject);
10401 auto throwScope = DECLARE_THROW_SCOPE(vm);
10402 UNUSED_PARAM(throwScope);
10403 UNUSED_PARAM(callFrame);
10404 auto& impl = castedThis->wrapped();
10405 if (UNLIKELY(callFrame->argumentCount() < 5))
10406 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
10407 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
10408 auto index = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument0.value());
10409 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
10410 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
10411 auto x = convert<IDLUnrestrictedFloat>(*lexicalGlobalObject, argument1.value());
10412 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
10413 EnsureStillAliveScope argument2 = callFrame->uncheckedArgument(2);
10414 auto y = convert<IDLUnrestrictedFloat>(*lexicalGlobalObject, argument2.value());
10415 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
10416 EnsureStillAliveScope argument3 = callFrame->uncheckedArgument(3);
10417 auto z = convert<IDLUnrestrictedFloat>(*lexicalGlobalObject, argument3.value());
10418 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
10419 EnsureStillAliveScope argument4 = callFrame->uncheckedArgument(4);
10420 auto w = convert<IDLUnrestrictedFloat>(*lexicalGlobalObject, argument4.value());
10421 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
10422 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
10423 InspectorCanvasCallTracer::recordAction(impl, "vertexAttrib4f"_s, { InspectorCanvasCallTracer::processArgument(impl, index), InspectorCanvasCallTracer::processArgument(impl, x), InspectorCanvasCallTracer::processArgument(impl, y), InspectorCanvasCallTracer::processArgument(impl, z), InspectorCanvasCallTracer::processArgument(impl, w) });
10424 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.vertexAttrib4f(WTFMove(index), WTFMove(x), WTFMove(y), WTFMove(z), WTFMove(w)); })));
10425}
10426
10427JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_vertexAttrib4f, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
10428{
10429 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_vertexAttrib4fBody>(*lexicalGlobalObject, *callFrame, "vertexAttrib4f");
10430}
10431
10432#endif
10433
10434#if ENABLE(WEBGL)
10435static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_vertexAttrib1fvBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
10436{
10437 auto& vm = JSC::getVM(lexicalGlobalObject);
10438 auto throwScope = DECLARE_THROW_SCOPE(vm);
10439 UNUSED_PARAM(throwScope);
10440 UNUSED_PARAM(callFrame);
10441 auto& impl = castedThis->wrapped();
10442 if (UNLIKELY(callFrame->argumentCount() < 2))
10443 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
10444 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
10445 auto index = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument0.value());
10446 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
10447 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
10448 auto values = convert<IDLUnion<IDLAllowSharedAdaptor<IDLFloat32Array>, IDLSequence<IDLUnrestrictedFloat>>>(*lexicalGlobalObject, argument1.value());
10449 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
10450 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
10451 InspectorCanvasCallTracer::recordAction(impl, "vertexAttrib1fv"_s, { InspectorCanvasCallTracer::processArgument(impl, index), InspectorCanvasCallTracer::processArgument(impl, values) });
10452 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.vertexAttrib1fv(WTFMove(index), WTFMove(values)); })));
10453}
10454
10455JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_vertexAttrib1fv, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
10456{
10457 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_vertexAttrib1fvBody>(*lexicalGlobalObject, *callFrame, "vertexAttrib1fv");
10458}
10459
10460#endif
10461
10462#if ENABLE(WEBGL)
10463static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_vertexAttrib2fvBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
10464{
10465 auto& vm = JSC::getVM(lexicalGlobalObject);
10466 auto throwScope = DECLARE_THROW_SCOPE(vm);
10467 UNUSED_PARAM(throwScope);
10468 UNUSED_PARAM(callFrame);
10469 auto& impl = castedThis->wrapped();
10470 if (UNLIKELY(callFrame->argumentCount() < 2))
10471 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
10472 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
10473 auto index = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument0.value());
10474 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
10475 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
10476 auto values = convert<IDLUnion<IDLAllowSharedAdaptor<IDLFloat32Array>, IDLSequence<IDLUnrestrictedFloat>>>(*lexicalGlobalObject, argument1.value());
10477 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
10478 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
10479 InspectorCanvasCallTracer::recordAction(impl, "vertexAttrib2fv"_s, { InspectorCanvasCallTracer::processArgument(impl, index), InspectorCanvasCallTracer::processArgument(impl, values) });
10480 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.vertexAttrib2fv(WTFMove(index), WTFMove(values)); })));
10481}
10482
10483JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_vertexAttrib2fv, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
10484{
10485 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_vertexAttrib2fvBody>(*lexicalGlobalObject, *callFrame, "vertexAttrib2fv");
10486}
10487
10488#endif
10489
10490#if ENABLE(WEBGL)
10491static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_vertexAttrib3fvBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
10492{
10493 auto& vm = JSC::getVM(lexicalGlobalObject);
10494 auto throwScope = DECLARE_THROW_SCOPE(vm);
10495 UNUSED_PARAM(throwScope);
10496 UNUSED_PARAM(callFrame);
10497 auto& impl = castedThis->wrapped();
10498 if (UNLIKELY(callFrame->argumentCount() < 2))
10499 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
10500 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
10501 auto index = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument0.value());
10502 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
10503 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
10504 auto values = convert<IDLUnion<IDLAllowSharedAdaptor<IDLFloat32Array>, IDLSequence<IDLUnrestrictedFloat>>>(*lexicalGlobalObject, argument1.value());
10505 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
10506 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
10507 InspectorCanvasCallTracer::recordAction(impl, "vertexAttrib3fv"_s, { InspectorCanvasCallTracer::processArgument(impl, index), InspectorCanvasCallTracer::processArgument(impl, values) });
10508 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.vertexAttrib3fv(WTFMove(index), WTFMove(values)); })));
10509}
10510
10511JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_vertexAttrib3fv, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
10512{
10513 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_vertexAttrib3fvBody>(*lexicalGlobalObject, *callFrame, "vertexAttrib3fv");
10514}
10515
10516#endif
10517
10518#if ENABLE(WEBGL)
10519static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_vertexAttrib4fvBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
10520{
10521 auto& vm = JSC::getVM(lexicalGlobalObject);
10522 auto throwScope = DECLARE_THROW_SCOPE(vm);
10523 UNUSED_PARAM(throwScope);
10524 UNUSED_PARAM(callFrame);
10525 auto& impl = castedThis->wrapped();
10526 if (UNLIKELY(callFrame->argumentCount() < 2))
10527 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
10528 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
10529 auto index = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument0.value());
10530 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
10531 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
10532 auto values = convert<IDLUnion<IDLAllowSharedAdaptor<IDLFloat32Array>, IDLSequence<IDLUnrestrictedFloat>>>(*lexicalGlobalObject, argument1.value());
10533 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
10534 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
10535 InspectorCanvasCallTracer::recordAction(impl, "vertexAttrib4fv"_s, { InspectorCanvasCallTracer::processArgument(impl, index), InspectorCanvasCallTracer::processArgument(impl, values) });
10536 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.vertexAttrib4fv(WTFMove(index), WTFMove(values)); })));
10537}
10538
10539JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_vertexAttrib4fv, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
10540{
10541 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_vertexAttrib4fvBody>(*lexicalGlobalObject, *callFrame, "vertexAttrib4fv");
10542}
10543
10544#endif
10545
10546#if ENABLE(WEBGL)
10547static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_vertexAttribPointerBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
10548{
10549 auto& vm = JSC::getVM(lexicalGlobalObject);
10550 auto throwScope = DECLARE_THROW_SCOPE(vm);
10551 UNUSED_PARAM(throwScope);
10552 UNUSED_PARAM(callFrame);
10553 auto& impl = castedThis->wrapped();
10554 if (UNLIKELY(callFrame->argumentCount() < 6))
10555 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
10556 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
10557 auto indx = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument0.value());
10558 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
10559 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
10560 auto size = convert<IDLLong>(*lexicalGlobalObject, argument1.value());
10561 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
10562 EnsureStillAliveScope argument2 = callFrame->uncheckedArgument(2);
10563 auto type = convert<IDLUnsignedLong>(*lexicalGlobalObject, argument2.value());
10564 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
10565 EnsureStillAliveScope argument3 = callFrame->uncheckedArgument(3);
10566 auto normalized = convert<IDLBoolean>(*lexicalGlobalObject, argument3.value());
10567 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
10568 EnsureStillAliveScope argument4 = callFrame->uncheckedArgument(4);
10569 auto stride = convert<IDLLong>(*lexicalGlobalObject, argument4.value());
10570 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
10571 EnsureStillAliveScope argument5 = callFrame->uncheckedArgument(5);
10572 auto offset = convert<IDLLongLong>(*lexicalGlobalObject, argument5.value());
10573 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
10574 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
10575 InspectorCanvasCallTracer::recordAction(impl, "vertexAttribPointer"_s, { InspectorCanvasCallTracer::processArgument(impl, indx), InspectorCanvasCallTracer::processArgument(impl, size), InspectorCanvasCallTracer::processArgument(impl, type), InspectorCanvasCallTracer::processArgument(impl, normalized), InspectorCanvasCallTracer::processArgument(impl, stride), InspectorCanvasCallTracer::processArgument(impl, offset) });
10576 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.vertexAttribPointer(WTFMove(indx), WTFMove(size), WTFMove(type), WTFMove(normalized), WTFMove(stride), WTFMove(offset)); })));
10577}
10578
10579JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_vertexAttribPointer, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
10580{
10581 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_vertexAttribPointerBody>(*lexicalGlobalObject, *callFrame, "vertexAttribPointer");
10582}
10583
10584#endif
10585
10586#if ENABLE(WEBGL)
10587static inline JSC::EncodedJSValue jsWebGLRenderingContextPrototypeFunction_viewportBody(JSC::JSGlobalObject* lexicalGlobalObject, JSC::CallFrame* callFrame, typename IDLOperation<JSWebGLRenderingContext>::ClassParameter castedThis)
10588{
10589 auto& vm = JSC::getVM(lexicalGlobalObject);
10590 auto throwScope = DECLARE_THROW_SCOPE(vm);
10591 UNUSED_PARAM(throwScope);
10592 UNUSED_PARAM(callFrame);
10593 auto& impl = castedThis->wrapped();
10594 if (UNLIKELY(callFrame->argumentCount() < 4))
10595 return throwVMError(lexicalGlobalObject, throwScope, createNotEnoughArgumentsError(lexicalGlobalObject));
10596 EnsureStillAliveScope argument0 = callFrame->uncheckedArgument(0);
10597 auto x = convert<IDLLong>(*lexicalGlobalObject, argument0.value());
10598 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
10599 EnsureStillAliveScope argument1 = callFrame->uncheckedArgument(1);
10600 auto y = convert<IDLLong>(*lexicalGlobalObject, argument1.value());
10601 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
10602 EnsureStillAliveScope argument2 = callFrame->uncheckedArgument(2);
10603 auto width = convert<IDLLong>(*lexicalGlobalObject, argument2.value());
10604 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
10605 EnsureStillAliveScope argument3 = callFrame->uncheckedArgument(3);
10606 auto height = convert<IDLLong>(*lexicalGlobalObject, argument3.value());
10607 RETURN_IF_EXCEPTION(throwScope, encodedJSValue());
10608 if (UNLIKELY(impl.hasActiveInspectorCanvasCallTracer()))
10609 InspectorCanvasCallTracer::recordAction(impl, "viewport"_s, { InspectorCanvasCallTracer::processArgument(impl, x), InspectorCanvasCallTracer::processArgument(impl, y), InspectorCanvasCallTracer::processArgument(impl, width), InspectorCanvasCallTracer::processArgument(impl, height) });
10610 RELEASE_AND_RETURN(throwScope, JSValue::encode(toJS<IDLUndefined>(*lexicalGlobalObject, throwScope, [&]() -> decltype(auto) { return impl.viewport(WTFMove(x), WTFMove(y), WTFMove(width), WTFMove(height)); })));
10611}
10612
10613JSC_DEFINE_HOST_FUNCTION(jsWebGLRenderingContextPrototypeFunction_viewport, (JSGlobalObject* lexicalGlobalObject, CallFrame* callFrame))
10614{
10615 return IDLOperation<JSWebGLRenderingContext>::call<jsWebGLRenderingContextPrototypeFunction_viewportBody>(*lexicalGlobalObject, *callFrame, "viewport");
10616}
10617
10618#endif
10619
10620JSC::IsoSubspace* JSWebGLRenderingContext::subspaceForImpl(JSC::VM& vm)
10621{
10622 auto& clientData = *static_cast<JSVMClientData*>(vm.clientData);
10623 auto& spaces = clientData.subspaces();
10624 if (auto* space = spaces.m_subspaceForWebGLRenderingContext.get())
10625 return space;
10626 static_assert(std::is_base_of_v<JSC::JSDestructibleObject, JSWebGLRenderingContext> || !JSWebGLRenderingContext::needsDestruction);
10627 if constexpr (std::is_base_of_v<JSC::JSDestructibleObject, JSWebGLRenderingContext>)
10628 spaces.m_subspaceForWebGLRenderingContext = makeUnique<IsoSubspace> ISO_SUBSPACE_INIT(vm.heap, vm.destructibleObjectHeapCellType.get(), JSWebGLRenderingContext);
10629 else
10630 spaces.m_subspaceForWebGLRenderingContext = makeUnique<IsoSubspace> ISO_SUBSPACE_INIT(vm.heap, vm.cellHeapCellType.get(), JSWebGLRenderingContext);
10631 auto* space = spaces.m_subspaceForWebGLRenderingContext.get();
10632IGNORE_WARNINGS_BEGIN("unreachable-code")
10633IGNORE_WARNINGS_BEGIN("tautological-compare")
10634 void (*myVisitOutputConstraint)(JSC::JSCell*, JSC::SlotVisitor&) = JSWebGLRenderingContext::visitOutputConstraints;
10635 void (*jsCellVisitOutputConstraint)(JSC::JSCell*, JSC::SlotVisitor&) = JSC::JSCell::visitOutputConstraints;
10636 if (myVisitOutputConstraint != jsCellVisitOutputConstraint)
10637 clientData.outputConstraintSpaces().append(space);
10638IGNORE_WARNINGS_END
10639IGNORE_WARNINGS_END
10640 return space;
10641}
10642
10643template<typename Visitor>
10644void JSWebGLRenderingContext::visitChildrenImpl(JSCell* cell, Visitor& visitor)
10645{
10646 auto* thisObject = jsCast<JSWebGLRenderingContext*>(cell);
10647 ASSERT_GC_OBJECT_INHERITS(thisObject, info());
10648 Base::visitChildren(thisObject, visitor);
10649 thisObject->visitAdditionalChildren(visitor);
10650}
10651
10652DEFINE_VISIT_CHILDREN(JSWebGLRenderingContext);
10653
10654template<typename Visitor>
10655void JSWebGLRenderingContext::visitOutputConstraints(JSCell* cell, Visitor& visitor)
10656{
10657 auto* thisObject = jsCast<JSWebGLRenderingContext*>(cell);
10658 ASSERT_GC_OBJECT_INHERITS(thisObject, info());
10659 Base::visitOutputConstraints(thisObject, visitor);
10660 thisObject->visitAdditionalChildren(visitor);
10661}
10662
10663template void JSWebGLRenderingContext::visitOutputConstraints(JSCell*, AbstractSlotVisitor&);
10664template void JSWebGLRenderingContext::visitOutputConstraints(JSCell*, SlotVisitor&);
10665void JSWebGLRenderingContext::analyzeHeap(JSCell* cell, HeapAnalyzer& analyzer)
10666{
10667 auto* thisObject = jsCast<JSWebGLRenderingContext*>(cell);
10668 analyzer.setWrappedObjectForCell(cell, &thisObject->wrapped());
10669 if (thisObject->scriptExecutionContext())
10670 analyzer.setLabelForCell(cell, "url " + thisObject->scriptExecutionContext()->url().string());
10671 Base::analyzeHeap(cell, analyzer);
10672}
10673
10674bool JSWebGLRenderingContextOwner::isReachableFromOpaqueRoots(JSC::Handle<JSC::Unknown> handle, void*, AbstractSlotVisitor& visitor, const char** reason)
10675{
10676 auto* jsWebGLRenderingContext = jsCast<JSWebGLRenderingContext*>(handle.slot()->asCell());
10677 auto& wrapped = jsWebGLRenderingContext->wrapped();
10678 if (!wrapped.isContextStopped() && wrapped.hasPendingActivity()) {
10679 if (UNLIKELY(reason))
10680 *reason = "ActiveDOMObject with pending activity";
10681 return true;
10682 }
10683 CanvasBase* root = WTF::getPtr(&(jsWebGLRenderingContext->wrapped().canvasBase()));
10684 if (!root)
10685 return false;
10686 if (UNLIKELY(reason))
10687 *reason = "Reachable from CanvasBase";
10688 return visitor.containsOpaqueRoot(root);
10689}
10690
10691void JSWebGLRenderingContextOwner::finalize(JSC::Handle<JSC::Unknown> handle, void* context)
10692{
10693 auto* jsWebGLRenderingContext = static_cast<JSWebGLRenderingContext*>(handle.slot()->asCell());
10694 auto& world = *static_cast<DOMWrapperWorld*>(context);
10695 uncacheWrapper(world, &jsWebGLRenderingContext->wrapped(), jsWebGLRenderingContext);
10696}
10697
10698#if ENABLE(BINDING_INTEGRITY)
10699#if PLATFORM(WIN)
10700#pragma warning(disable: 4483)
10701extern "C" { extern void (*const __identifier("??_7WebGLRenderingContext@WebCore@@6B@")[])(); }
10702#else
10703extern "C" { extern void* _ZTVN7WebCore21WebGLRenderingContextE[]; }
10704#endif
10705#endif
10706
10707JSC::JSValue toJSNewlyCreated(JSC::JSGlobalObject*, JSDOMGlobalObject* globalObject, Ref<WebGLRenderingContext>&& impl)
10708{
10709
10710#if ENABLE(BINDING_INTEGRITY)
10711 const void* actualVTablePointer = getVTablePointer(impl.ptr());
10712#if PLATFORM(WIN)
10713 void* expectedVTablePointer = __identifier("??_7WebGLRenderingContext@WebCore@@6B@");
10714#else
10715 void* expectedVTablePointer = &_ZTVN7WebCore21WebGLRenderingContextE[2];
10716#endif
10717
10718 // If this fails WebGLRenderingContext does not have a vtable, so you need to add the
10719 // ImplementationLacksVTable attribute to the interface definition
10720 static_assert(std::is_polymorphic<WebGLRenderingContext>::value, "WebGLRenderingContext is not polymorphic");
10721
10722 // If you hit this assertion you either have a use after free bug, or
10723 // WebGLRenderingContext has subclasses. If WebGLRenderingContext has subclasses that get passed
10724 // to toJS() we currently require WebGLRenderingContext you to opt out of binding hardening
10725 // by adding the SkipVTableValidation attribute to the interface IDL definition
10726 RELEASE_ASSERT(actualVTablePointer == expectedVTablePointer);
10727#endif
10728 return createWrapper<WebGLRenderingContext>(globalObject, WTFMove(impl));
10729}
10730
10731JSC::JSValue toJS(JSC::JSGlobalObject* lexicalGlobalObject, JSDOMGlobalObject* globalObject, WebGLRenderingContext& impl)
10732{
10733 return wrap(lexicalGlobalObject, globalObject, impl);
10734}
10735
10736WebGLRenderingContext* JSWebGLRenderingContext::toWrapped(JSC::VM& vm, JSC::JSValue value)
10737{
10738 if (auto* wrapper = jsDynamicCast<JSWebGLRenderingContext*>(vm, value))
10739 return &wrapper->wrapped();
10740 return nullptr;
10741}
10742
10743}
10744
10745#endif // ENABLE(WEBGL)
10746